暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Golang数据类型--数组

Note2020 2021-03-12
504

数组是同一种数据类型元素的集合。在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化。

//声明一个 长度为3 数据类型为int的数组
var arr [3]int
var 数组变量名 [元素数量]T

数组长度一旦声明就不能改变,长度不同的数组,属于不同类型

var arr [5]int
var 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]int
fmt.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]int
for 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进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论