数组是同一种数据类型元素的集合。在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化。
//声明一个 长度为3 数据类型为int的数组var arr [3]int
var 数组变量名 [元素数量]T
数组长度一旦声明就不能改变,长度不同的数组,属于不同类型
var arr [5]intvar arr2 [10]int//arr == arr2 不相等
数组的初始化
数组的初始化也有很多方式
1:
func main(){var arr [10]int//输出[0,0,0,0,0,0,0,0,0,0]var arr1 = [10]int{1,2,3}//输出[1,2,3,0,0,0,0,0,0,0]var arr2 = [4]string{"四川","成都","成华区"}//输出["四川","成都","成华区",""]}
2:
按照上面的方法,确保数组长度和初始值一直,可以使用自动推导数组的长度
var arr [3]intfmt.Println(arr) //[0,0,0]var arr1 = [...]int{100,200} //初始化长度自动推导fmt.Println(arr1) //[100,200]
3:
使用指定索引值的方式来初始化数组
var arr = [10]int{2:10,8:100}//指定索引进行初始化fmt.Println(arr)//[0,0,10,0,0,0,0,0,100,0,0]
数组的遍历
1:使用for循环遍历数组
var arr [10]int//使用for循环遍历数组for i:=0;len(arr);i++{fmt.Println(i)}
2:使用range遍历数组
var arr [10]intfor index,value:=range arr{//index 索引//value 值fmt.Println(index,value)}
多维数组
声明一个二维数组,==数组中嵌套数组
arr := [],[]string{{"a","a"},{"b","b"},{"c","c"},}fmt.Println(a) //[[a a] [b b] [c c]]
!数组是值类型,赋值和传参拷贝 会拷贝整个数组 不会互相影响
文章转载自Note2020,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




