当前位置: 首页 > news >正文

golang的二维数组

二维数组

二维数组其实可以理解为一维数组,只不过这个一维数组的每个数据又是一维数组

二维数组快速入门

func main() {
var a [3][3]int = [3][3]int{{1, 1, 1}, {2, 2, 2}, {3, 3, 3}}
fmt.Println(a)
for i := 0; i < len(a); i++ {
fmt.Println(a[i])
}
for i := 0; i < len(a); i++ {
for j := 0; j < len(a[i]); j++ {
fmt.Printf("%v ", a[i][j])
}
fmt.Println()
}
}
输出结果:
[[1 1 1] [2 2 2] [3 3 3]]
[1 1 1]
[2 2 2]
[3 3 3]
1 1 1
2 2 2
3 3 3

二维数组的使用

  1. 声明
    1. 标准声明(显式指定两个维度大小):
      var 数组名 [大小][大小]类型 = [大小][大小]类型{{初值…},{初值…}}
    2. 混合声明(第一维自动推导):
      var 数组名 [大小][大小]类型 = […] [大小]类型{{初值…},{初值…}}
    3. 简化声明(类型推断):
      var 数组名 = [大小][大小]类型{{初值…},{初值…}}
    4. 完全简化声明(双维自动推导):
      var 数组名 = […] [大小]类型{{初值…},{初值…}}

二维数组的遍历

  1. 双层for循环遍历
    var a [3][3]int = [3][3]int{{1, 1}, {2, 2, 2}, {3, 3, 3}}
    fmt.Println(a)
    for i := 0; i < len(a); i++ {
    for j := 0; j < len(a[i]); j++ {
    fmt.Printf("%v ", a[i][j])
    }
    fmt.Println()
    }
  2. for-range
    for _, v := range a {
    for _, vv := range v {
    fmt.Printf("%v ", vv)
    }
    fmt.Println()
    }
http://www.dtcms.com/a/322642.html

相关文章:

  • 直接插入排序算法:可视化讲解与C语言实现
  • 【R语言】单细胞数据整合质量评估(3)
  • Matlab 基于BP神经网络结合Bagging(BP-Bagging)集成算法的单变量时序预测 (单输入单输出)
  • Linux运维新手的修炼手扎之第26天
  • Effective C++ 条款31: 将文件间的编译依存关系降至最低
  • 飞算JavaAI:人工智能与Java的创新融合与应用前景
  • 5、docker镜像管理命令
  • Qt/C++开发监控GB28181系统/实时监测设备在线离线/视频预览自动重连/重新点播取流/低延迟
  • MySQL 复制表详细说明
  • 某金融APP防护检测分析
  • PromptPilot打造高效AI提示词
  • 智慧农业-无人机视角庄稼倒伏农作物倒伏检测数据集VOC+YOLO格式541张1类别
  • 计算机视觉CS231n学习(6)
  • 跨境电商系统开发:ZKmall开源商城的技术选型与代码规范实践
  • 3D感知多模态(图像、雷达感知)
  • node.js 零基础入门
  • LangChain-Unstructured 基础使用:PDF 与 Markdown 处理解析
  • SwiftUI 登录页面键盘约束冲突与卡顿优化全攻略
  • 为什么动态导入中Vite无法正确解析别名路径?
  • 如何在 Excel 中快速求和?【图文详解】Excel求和技巧,Excel求和公式大全,多种方式求和
  • 【线性代数】6二次型
  • 【线性代数】目录
  • 【线性代数】线性方程组与矩阵——(2)矩阵与线性方程组的解
  • sqli-labs靶场less51~less65
  • Debian防火墙 ufw
  • DataDex 多样化 JSON 服务——使用教程
  • K8s-pod控制器
  • Web前端之Vue框架
  • Java Stream API 实战:提升集合处理的效率与可读性!
  • 使用 Visual Studio 2022 编译 PortAudio 项目