Go语言的包
查看包:
GOROOT/src/pkg
Go常用包列举
fmt--->格式化的标准输入输出
io--->提供了原始的 I/O 操作界面
bufio--->对 io 包的封装,提供了数据缓冲功能
sort--->对切片和用户定义的集合进行排序的功能
strconv--->将字符串转换成基本数据类型,或者从基本数据类型转换为字符串
os--->提供了不依赖平台的操作系统函数接口
sync--->实现多线程中锁机制以及其他同步互斥机制
flag--->提供命令行参数的规则定义和传入参数解析的功能,绝大多数命令行功能都需要用到该包
encoding/json--->提供了对 JSON 的基本支持,比如从一个对象序列化为 JSON 字符串,或者从 JSON 字符串反序列化出一个具体的对象等
net/http--->提供 HTTP 相关服务,主要包括 http 请求、响应和 URL 的解析,以及基本的 http 客户端和扩展的 http 服务
reflect--->实现了运行时反射,允许程序通过抽象类型操作对象
string--->处理字符串的一些函数集合,包括合并、查找、分割、比较、后缀检查、索引、大小写处理等等
byte--->对字节切片进行读写操作的一系列函数
log--->输出日志
fmt
格式化的标准输入输出:
格式化短语派生于C
语言,短语(%- 序列
)的使用:
-
%v:
默认格式的值。当打印结构时,加号(%+v
)会增加字段名 -
%#v:
Go
样式的值表达 -
%T:
带有类型的Go
样式的值表达
io
对os
这样的原始i/o
进行封装,使其具有抽象功能用在公共的接口上
bufio
bufio
各个组件内部都维护了一个缓冲区,数据读写操作都直接通过缓存区进行。当发起一次读写操作时,会首先尝试从缓冲区获取数据,只有当缓冲区没有数据时,才会从数据源获取数据更新缓冲
net/http
提供http
相关服务,包括http
请求、响应和URL
的解析,以及基本的http
客户端和扩展的http
服务
reflect
允许程序通过抽象类型操作对象。通常用于处理静态类型 interface{} 的值,并且通过 Typeof 解析出其动态类型信息,通常会返回一个有接口类型 Type 的对象。
log
log
包中提供了三类日志输出接口,Print
、Fatal
和Panic
。
-
Print
是普通输出; -
Fatal
是在执行完Print
后,执行os.Exit(1)
; -
Panic
是在执行完Print
后调用panic()