Go语言-数组的声明

数组

数组也就是相当于一个容器,可以装进去各种东西。

实现方法

这是一个最简单的声明方式

func ArrDeclare1(){
	//默认值为0
	var arr [5]int
	fmt.Println(arr)
}

各种不同的声明方式

func ArrDeclare2(){
	var arr = [5]int{1, 2, 3, 4, 5}
	fmt.Println(arr)

	//短声明
	arr2 := [5]int{11, 21, 31, 11, 51}
	fmt.Println(arr2)

	//部分初始化
	arr3 := [5]int{11, 21}
	fmt.Println(arr3)

	//可以指定位置去定义
	arr4 := [5]int{1:11, 3:21, 2:31, 4:11, 0:51}
	fmt.Println(arr4)

	//让编译器为我们计算位置,即使用三个点
	arr5 := [...]int{11, 21, 31, 11, 51}
	fmt.Println(arr5)
}

查询数组是什么类型的

func CheckType(){
	//数组的长度是类型的一部分
	arr2 := [5]int{11, 21, 31, 11, 51}
	arr3 := [...]string{"我", "的", "名", "子","叫","HH"}
	fmt.Println(arr2)
	fmt.Println(arr3)
	fmt.Printf("arr2的类型是 %T/n",arr3)
	fmt.Println()
	fmt.Printf("arr3的类型是 %T/n",arr2)
}

多维数组

func MultiArr(){
	arr :=[3][2]string{
		{"我","的"},
		{"名","字"},
		{"叫“,”HH"},
}
	fmt.Println(arr)
	fmt.Println("输出数组的长度len(arr):",len(arr))
}

对数组的遍历

func traver()  {
	arr3 := [...]string{"我", "的", "名", "子","叫","HH"}
	//method 1
	for index,value := range arr3{
		fmt.Printf("arr3[%d]=%s\n",index,value)
	}
	//method2
	for _,value :=range arr3{
			fmt.Printf("value=%s\n",value)
	}
}

复制数组

func ArrCopy()  {
	//由此可得数组是值类型并不是引用类型
	arr3 := [...]string{"我", "的", "名", "子","叫","HH"}
	copy := arr3
	copy[0]="你"
	fmt.Println(arr3)
	fmt.Println(copy)
}

运行即可

func main() {
ArrDeclare1()
ArrDeclare2()
CheckType()
MultiArr()
traver()
}

总结

对于数组声明来说会用即可,并没有太多注意点。至少现在还没有遇见,后面遇见了再补充。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值