声明数组方法:var arr [n]type
其中n标书数组长度,type表示类型,还可以直接定义数组 a := [3]int{1,2,3}
,声明一个根据数据决定长度的数组c:=[...]int{4,5,6}
- 切片(slice 一个动态的数组,array不能动态修改数据)
声明一个切片并初始化:slice := []byte{1,2,3}
切片有append之类的方法。
// 通过make函数新建一个元素个数为5个的slice
mySlice := make([]int, 5)
// 新建一个有5个元素的slice,并多预留5个元素的存储空间(即容量为10个)
sliceWithCap := make([]int, 5, 10)
// 直接初始化新建slice
sliceInit := []int{1, 2, 3, 4, 5}
- map(也是一个数组,slice和array数组里面的数据类型都是统一的,map里面可以是不同分数据类型,的index只能是int类型,而map多了很多类型,可以是int, 可以是string及所有完全定义了==与!=操作的类型。)
// 声明一个key是字符串,值为int的字典,这种方式的声明需要在使用之前使用make初始化
var numbers map[string]int
// 另一种map的声明方式
numbers := make(map[string]int)
numbers["one"] = 1 //赋值
numbers["ten"] = 10 //赋值
numbers["three"] = 3
fmt.Println("第三个数字是: ", numbers["three"]) // 读取数据
// 打印出来如:第三个数字是: 3