Linux多维数组,linuxea:go多维数组和三维数组(20)

5c1967c5325842cec010c6abd3e07965.gif

多维数组中是不可以用自动推导的。

2.1多维数组的定义

数组中的多维数组。定义一个数组长度为3,并定义长度为2的int数组,如下:

[3][2]int

[3]为元素的数量,[2]int为类型,2是长度

package main

import "fmt"

func main() {

var marrays [3][2]int

fmt.Println(marrays)

}

打印

[root@www.linuxea.com /opt/Golang/work2]# go run array2.go

[[0 0] [0 0] [0 0]]

2.2多维数组的查询

和数组一样,我们使用索引查看第一数组,直接使用索引即可,如下:

fmt.Println(marrays[0])

如果访问的是索引为0中的第一个元素,如下:

fmt.Println(marrays[0][0])

如下:

package main

import "fmt"

func main() {

var marrays [3][2]int

fmt.Println(marrays)

fmt.Println(marrays[0])

fmt.Println(marrays[0][0])

}

打印

[root@www.linuxea.com /opt/Golang/work2]# go run array2.go

[[0 0] [0 0] [0 0]]

[0 0]

0

2.3多维数组的修改

尝试对第一个索引元素修改。

索引0,长度为2的int类型,修改如下:

marrays[0] = [2]int{1,2}

如下:

package main

import "fmt"

func main() {

var marrays [3][2]int

marrays[0] = [2]int{1,2}

fmt.Println(marrays)

}

打印:

[root@www.linuxea.com /opt/Golang/work2]# go run array2.go

[[1 2] [0 0] [0 0]]

在修改索引为1的元素

marrays[1] = [2]int{100,200}

fmt.Println(marrays)

如下:

package main

import "fmt"

func main() {

var marrays [3][2]int

marrays[0] = [2]int{1,2}

fmt.Println(marrays)

marrays[1] = [2]int{100,200}

fmt.Println(marrays)

}

运行:

[root@www.linuxea.com /opt/Golang/work2]# go run array2.go

[[1 2] [0 0] [0 0]]

[[1 2] [100 200] [0 0]]

多维数组也可以进行遍历的。如下:

package main

import "fmt"

func main() {

var marrays [3][2]int

marrays[0] = [2]int{1,2}

marrays[1] = [2]int{100,200}

for index,key := range marrays {

fmt.Println(index,key)

}

}

运行

[root@www.linuxea.com /opt/Golang/work2]# go run array2.go

0 [1 2]

1 [100 200]

2 [0 0]

2.4多维度数组字面量

多维数组中是不可以用自动推导的。

[root@www.linuxea.com /opt/Golang/work2]# cat array2.go

package main

import "fmt"

func main() {

marrays = [3][2]int{{1,2},{3,4},{5,6}}

fmt.Println(marrays)

}

运行

[root@www.linuxea.com /opt/Golang/work2]# go run array2.go

[[1 2] [3 4] [5 6]]

I. 3.三维数组

3.1三维数组定义

定义一个三维数组,长度为3,二维数组,长度为5的int类型

var m3 [3][2][5]int

如下:

package main

import "fmt"

func main() {

var m3 [3][2][5]int

fmt.Println(m3)

}

运行

[root@www.linuxea.com /opt/Golang/work2]# go run array2.go

[[[0 0 0 0 0] [0 0 0 0 0]] [[0 0 0 0 0] [0 0 0 0 0]] [[0 0 0 0 0] [0 0 0 0 0]]]

如上所示,三位数组长度为3,二维数组长度为2,长度为5的int类型

除非另有说明,否则本站上的内容根据以下许可进行许可: CC署名-非商业性使用-相同方式共享4.0国际许可协议4.0进行许可

本文作者:www.linuxea.com for Mark

文章链接:http://www.linuxea.com/2495.html (转载请注明本文出处和本章链接)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值