Golang二维数组的使用方式


Posted in Golang onMay 28, 2021

★二维数组的使用方式:

先声明或者定义,再赋值

1)语法:var 数组名[大小][大小]类型

2)比如:var arr[2][3]int[][]

  两行三列的二维数组

★二维数组的遍历

1)双层for循环

2)for-range方式完成遍历

package main

import (
    "fmt"
)
func main() {
//演示二维数组的遍历
    var arr3 = [2][3]int{{1,2,3},{4,5,6}}
    //for循环来遍历
    for i :=0;i < len(arr3);i++{
        for j:=0;j < len(arr3[i]);j++{
            fmt.Printf("%v\t",arr3[i][j])
        }
        fmt.Println()
    }

    //for-range来遍历二维数组
    for i,v :=range arr3{
        for j,v2 :=range v{
            fmt.Printf("arr3[%v][%v]=%v \t",i,j,v2)
        }
        fmt.Println()
    }
}

PS:go语言基础之二维数组

1、二维数组

示例:

package main //必须有个main包
 
import "fmt"
 
func main() {
    //有多少个[]就是多少维
    //有多少个[]就用多少个循环
    var a [3][4]int
 
    k := 0
    for i := 0; i < 3; i++ {
        for j := 0; j < 4; j++ {
            k++
            a[i][j] = k
            fmt.Printf("a[%d][%d] = %d, ", i, j, a[i][j])
        }
        fmt.Printf("\n")
    }
 
    fmt.Println("a = ", a)
 
    //有3个元素,每个元素又是一维数组[4]int
    b := [3][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}}
    fmt.Println("b = ", b)
 
    //部分初始化,没有初始化的值为0
    c := [3][4]int{{1, 2, 3}, {5, 6, 7, 8}, {9, 10}}
    fmt.Println("c = ", c)
 
    d := [3][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}}
    fmt.Println("d = ", d)
 
    e := [3][4]int{1: {5, 6, 7, 8}}
    fmt.Println("e = ", e)
}

执行结果:

a[0][0] = 1, a[0][1] = 2, a[0][2] = 3, a[0][3] = 4,
a[1][0] = 5, a[1][1] = 6, a[1][2] = 7, a[1][3] = 8,
a[2][0] = 9, a[2][1] = 10, a[2][2] = 11, a[2][3] = 12,
a =  [[1 2 3 4] [5 6 7 8] [9 10 11 12]]
b =  [[1 2 3 4] [5 6 7 8] [9 10 11 12]]
c =  [[1 2 3 0] [5 6 7 8] [9 10 0 0]]
d =  [[1 2 3 4] [5 6 7 8] [0 0 0 0]]
e =  [[0 0 0 0] [5 6 7 8] [0 0 0 0]]

以上就是Golang二维数组的使用方式的详细内容,更多关于Golang二维数组的资料请关注三水点靠木其它相关文章!

Golang 相关文章推荐
一文读懂go中semaphore(信号量)源码
Apr 03 Golang
golang 实现菜单树的生成方式
Apr 28 Golang
golang 生成对应的数据表struct定义操作
Apr 28 Golang
golang goroutine顺序输出方式
Apr 29 Golang
Go 在 MongoDB 中常用查询与修改的操作
May 07 Golang
GoLang中生成UUID唯一标识的实现
May 08 Golang
go xorm框架的使用
May 22 Golang
Golang Elasticsearches 批量修改查询及发送MQ
Apr 19 Golang
Golang 对es的操作实例
Apr 20 Golang
Go语言测试库testify使用学习
Jul 23 Golang
Go gorilla securecookie库的安装使用详解
Aug 14 Golang
Golang标准库syscall详解(什么是系统调用)
May 25 #Golang
go 实现简易端口扫描的示例
May 22 #Golang
go xorm框架的使用
May 22 #Golang
Golang实现AES对称加密的过程详解
May 20 #Golang
go语言基础 seek光标位置os包的使用
May 09 #Golang
Golang 实现获取当前函数名称和文件行号等操作
May 08 #Golang
Golang 获取文件md5校验的方法以及效率对比
May 08 #Golang
You might like
Yii2框架实现注册和登录教程
2016/09/30 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
JavaScript获取网页表单action属性的方法
2015/04/02 Javascript
JavaScript在网页中画圆的函数arc使用方法
2015/11/13 Javascript
JavaScript+html5 canvas绘制渐变区域完整实例
2016/01/26 Javascript
浅谈JavaScript 覆盖原型以及更改原型
2016/08/31 Javascript
form+iframe解决跨域上传文件的方法
2016/11/18 Javascript
判断横屏竖屏(三种)
2017/02/13 Javascript
vue-router路由简单案例介绍
2017/02/21 Javascript
JavaScript函数绑定用法实例分析
2017/11/14 Javascript
浅谈vue,angular,react数据双向绑定原理分析
2017/11/28 Javascript
Vue引入jquery实现平滑滚动到指定位置
2018/05/09 jQuery
vue elementUI 表单校验功能之数组多层嵌套
2019/06/04 Javascript
Vue路由的模块自动化与统一加载实现
2020/06/05 Javascript
jQuery实现雪花飘落效果
2020/08/02 jQuery
[01:02:38]DOTA2-DPC中国联赛定级赛 LBZS vs Phoenix BO3第二场 1月10日
2021/03/11 DOTA
Python设计模式编程中Adapter适配器模式的使用实例
2016/03/02 Python
Python 基础之字符串string详解及实例
2017/04/01 Python
Django内容增加富文本功能的实例
2017/10/17 Python
Python入门之三角函数tan()函数实例详解
2017/11/08 Python
Linux下Python安装完成后使用pip命令的详细教程
2018/11/22 Python
Python3.5模块的定义、导入、优化操作图文详解
2019/04/27 Python
python生成任意频率正弦波方式
2020/02/25 Python
python 决策树算法的实现
2020/10/09 Python
python中pow函数用法及功能说明
2020/12/04 Python
曼联官方网上商店:Manchester United Direct
2017/07/28 全球购物
加拿大领先的冒险和户外零售商:Atmosphere
2017/12/19 全球购物
美术专业学生个人自我评价
2013/09/19 职场文书
留学生如何写好自荐信
2013/12/27 职场文书
工作试用期自我评价
2015/03/10 职场文书
2019年恭贺升学祝福语集锦
2019/08/15 职场文书
Canvas三种动态画圆实现方法说明(小结)
2021/04/16 Javascript
浅谈Python类的单继承相关知识
2021/05/12 Python
java调用Restful接口的三种方法
2021/08/23 Java/Android
Apache Hudi数据布局黑科技降低一半查询时间
2022/03/31 Servers
Java基础——Map集合
2022/04/01 Java/Android