go的len和cap

go的len和cap

go 的 len 和 cap

func main() {
	//make一个切片时需要初始化长度
	//var s=make([]int)
	var s = make([]int, 0, 10)
	fmt.Println(len(s))
	fmt.Println(cap(s))

	//var m=make(map[string]struct{},0,10)//错误,map只支持make容量,不支持长度
	var m = make(map[string]struct{}, 10)
	fmt.Println(len(m))
	//fmt.Println(cap(m))//map 不支持cap函数返回容量大小,仅支持len长度

	var c = make(chan int, 1) //此次设置是不是len,而是cap缓冲区的大小,也称容量
	fmt.Println(len(c))
	fmt.Println(cap(c))
}