Go的数组基本操作

Go的数组基本写法

package main

import "fmt"

func main() {

	var numbers [5]int = [5]int{1, 2, 3, 4, 5}
	fmt.Printf("%d\n", numbers[2])

	//部分赋值
	numbers1 := [5]int{1, 2}
	fmt.Printf("%d\n", numbers1[1])

	//指定元素初始化
	numbers2 := [5]int{2: 5, 3: 6}
	fmt.Printf("%d\n", numbers2[2])

	//通过初始化确定数组长度
	numbers3 := [...]int{7, 8, 5}
	fmt.Printf("numbers3 len = %d", len(numbers3))

	//不用初始化赋值
	var numbers4 [5]int
	numbers4[0] = 1
	numbers1[1] = 2
	fmt.Printf("%d\n", numbers4[1])
}

输出结果:

3
2                
5                
numbers3 len = 30

二维数组

package main

import "fmt"

func main() {
	var arr [2][3]int = [2][3]int{{1, 2, 3}, {5, 6, 7}}
	fmt.Println(arr)

	//部分初始化
	var arr2 [2][3]int = [2][3]int{{1, 2, 3}, {6}}
	fmt.Println(arr2)

	//指定元素初始化
	var arr3 [2][3]int = [2][3]int{1: {5, 6}}
	fmt.Println(arr3)
	var arr4 [2][3]int = [2][3]int{0: {1: 6}}
	fmt.Println(arr4)

	//通过初始化确定二维数组的行数
	arr5 := [...][3]int{{1, 2, 3}, {5, 6}} //行的下标可以用“...”来代替,但是列的下标不能用“...”来代替
	fmt.Println(arr5)
	fmt.Printf("二维数组有%d行\n", len(arr5))
	fmt.Printf("二维数组有%d列\n", len(arr5[0]))

	//循环遍历二维数组
	for i, v := range arr {
		fmt.Printf("i == %d, v == %d \n", i, v)
		for j, data := range v {
			fmt.Printf("j == %d, data == %d \n", j, data)
		}
	}

}

输出结果:

[[1 2 3] [5 6 7]]
[[1 2 3] [6 0 0]]    
[[0 0 0] [5 6 0]]    
[[0 6 0] [0 0 0]]    
[[1 2 3] [5 6 0]]    
二维数组有2行        
二维数组有3列        
i == 0, v == [1 2 3] 
j == 0, data == 1    
j == 1, data == 2    
j == 2, data == 3    
i == 1, v == [5 6 7] 
j == 0, data == 5    
j == 1, data == 6    
j == 2, data == 7    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值