数组和切片
数组是固定长度的,保存的是值类型
切片是不固定长度的,保存的是底层数组的引用
切片可以添加元素,容量不够时,切片自动扩容为原来的2倍
切片扩容后和原来的数组断开联系
strconv
字符串和其他数据类型互相转换的库
map
map是一个键值对数据结构,m = map[string]int{}
map必须初始化
map不是线程安全的,因此需要加锁
map主要是提高查询速度
heap
heap包提供了对任意类型(实现了heap.Interface接口)的堆操作.
list
list包实现了双向链表.
ring
ring实现了环形链表的操作.
sort
sort 包为切片及用户定义的集合的排序操作提供了原语.
strings
strings包实现了用于操作字符的简单函数.
sync
sync 包提供了互斥锁这类的基本的同步原语.
atomic
atomic 包提供了底层的原子性内存原语,这对于同步算法的实现很有用.
time
time包提供了时间的显示和测量用的函数.
path
path实现了对斜杠分隔的路径的实用操作函数.
filepath
filepath包实现了兼容各操作系统的文件路径的实用操作函数.
url
url包解析URL并实现了查询的逸码,参见RFC 3986.
os
os包提供了操作系统函数的不依赖平台的接口.
exec
exec包执行外部命令.
signal
signal包实现了对输入信号的访问.
mail 包实现了解析邮件消息的功能.
rpc
rpc 包提供了一个方法来通过网络或者其他的I/O连接进入对象的外部方法.
jsonrpc
jsonrpc 包使用了rpc的包实现了一个JSON-RPC的客户端解码器和服务端的解码器.
net
net包提供了可移植的网络I/O接口,包括TCP/IP、UDP、域名解析和Unix域socket.
http
http包提供了HTTP客户端和服务端的实现.
io
io 包为I/O原语提供了基础的接口.
ioutil
ioutil 实现了一些I/O的工具函数。
log
log包实现了简单的日志服务.