数组定义
var arr [1]int //声明
arr = [1]int{} //初始化长度为1的数组
arr1 := [3]int{1,2,3} //同样初始化三个值
arr2 := [...]int{1,2,3} //同样初始化三个值,三个点表示自动计算长度
arr_1 := [1][2]int{{1,2}} //二维数组
切片也是go原生的类型,也是一种数组,叫动态数组,其实就相当于java中的ArrayList,可变数组。在定义的时候如果不写这个长度值,就相当于定义个一个切片(定义了长度就是数组)
var arr []int
arr = []int{1,2,3} //定义数组
slice := arr[0:2] //从一个slice初始化,0:2表示从开始的位置截止到第三个。
slice = arr[:2] //如果是从0开始,可以简写为[:2]
slice = arr[:] //拷贝slice
//遍历slice
for v:= range slice{
fmt.Println(v)
}
Map定义
var map1 map[int]string //声明,没有初始化的时候是nil,此时是不能进行key操作的
map1 := map[int]string{} //初始化之后才能进行操作,初始化一个空的集合
map1 := map[int]string{0:"zero",1:"1"} //也可以在此添加初始数据
//遍历Map
for k,v := range map1{
fmt.Println(k,"=",v)
}