二维数组

/*
 * 二维数组
 *   1:定义,初始化
 *   int[][] arr2 = new int[3][3];
 *   第1个3代表这个二维数组是由3个一维数组构成的
 *   第2个3代表每个一维数组的元素的个数有3个
 *   
 *   二维数组分类
 *     1:规则二维数组:每个一维数组的元素个数相同
 *     2:不规则二维数组:每个一维数组的元素个数不相同
 *   2:遍历
 *     普通for循环
 *     for---each
 *   3:内存分配
 *   4:二维数组的转置
 *   原二维数组
 *     a   b    c   d
 *     00  01   02  03
 *     e f g h
 *     j j k l
 *     
 *  
 *     
 *   
 *   
 *   
 *   二维数组的使用场合
 *   1:2D游戏地图
 *   2:省市联动
 *
 */

public static void main(String[] args) {
    
    String[][] pro = {
            {"武汉市","黄冈市","黄石市"},
            {"西安市","咸阳市","宝鸡市","延安市"}
    };
    
    //1:定义,初始化  动态初始化  根据数组的长度,确定数组的元素的个数
    /*int[][] arr3 = new int[3][3];
    arr[0][0] = 10;
    arr[0][1] = 20;
    arr[0][2] = 30;
    arr[1][0] = 40;
    arr[1][1] = 50;
    arr[1][2] = 60;
    arr[2][0] = 70;
    arr[2][1] = 80;
    arr[2][2] = 90;*/
    //2:静态初始化   根据元素的个数,确定数组的长度
    int[][] arr2 = new int[][]{{10,20,30},{40,50,60},{70,80,90}};
    //静态初始化  根据元素的个数,确定数组的长度
    int[][] arr = {
                    {10,20,30,100},
                    {40,50,60,110},
                    {70,80,90,120}
                    };
    //外层循环的次数是二维数组中一维数组的的个数  普通for循环
    for(int j = 0;j<arr.length;j++){
        //里层循环的次数是每一个一维数组元素的个数
        for(int i = 0;i<arr[j].length;i++){
            System.out.println(arr[j][i]);
        }
    }

//双层   for-each
    System.out.println("---------------------");
    for (int[] is : arr) {
        for (int i : is) {
            System.out.println(i);
        }
    }
    
    
    //不规则二维数组  先确定一维数组的个数  ,动态初始化
    String[][] str = new String[3][];
    //分别给每个一维数组,赋予长度
    str[0] = new String[3];
    str[1] = new String[4];
    str[2] = new String[5];
    //静态初始化
    String[][] str2 = new String[][]{{"a"},{"b","c"},{"d","e","f"}};
    
    String[][]  str3 = {
                        {"a"},
                        {"b","c"},
                        {"d","e","f"}
                        };

}

三维数组

1.直接定义法,直接定义三维

int a[][][] = new int[1][1][1];
2.二维转三维,先定义若干二维,再直接填充进三维中.

public final static int[][] a0 = {
   { 0, 1, 2}, {3,4,5}, {4,6,7} };
 public final static int[][] a1 = {
   { 0, 4, 6,}, {6, 8, 8, 6}, {8, 8, 6, 12, 14, 4, 4, 0} };
 public final static int[][][] as = {a0,a1 };

二维数组/三维数组 定义相关推荐

  1. linux c语言 malloc动态分配指针,C语言malloc函数为一维,二维,三维数组分配空间...

    c语言允许建立内存动态分配区域,以存放一些临时用的数据,这些数据不必在程序的声明部分定义,也不必等到函数结束时才释放,而是需要时随时开辟,不需要时随时释放,这些数据存储在堆区.可以根据需要,向系统申请 ...

  2. c语言malloc申请三维数组,C语言malloc函数为一维,二维,三维数组分配空间

    c语言允许建立内存动态分配区域,以存放一些临时用的数据,这些数据不必在程序的声明部分定义,也不必等到函数结束时才释放,而是需要时随时开辟,不需要时随时释放,这些数据存储在堆区.可以根据需要,向系统申请 ...

  3. C语言malloc函数为一维,二维,三维数组分配空间

    c语言允许建立内存动态分配区域,以存放一些临时用的数据,这些数据不必在程序的声明部分定义,也不必等到函数结束时才释放,而是需要时随时开辟,不需要时随时释放,这些数据存储在堆区.可以根据需要,向系统申请 ...

  4. js 一维数组转换成二维、三维数组

    需求:后台接口返回一个一维数组,前端需要转换成一个二维,或者三维数组进行级联展示 举个例子: 根据产品类型可以分为:智能手机.耳机.智能家电... 其中智能手机中又可以分为: Ace系列,Reno系列 ...

  5. JAVA基础之二维数组三维数组及应用

    二维数组 简单说明: 如何描述下面定义的二维数组 定义方式一: int[][] array = new int[3][4]; 描述:该二维数组中有三个一维数组 每一个一维数组中有4个元素打印二维数组的 ...

  6. HDU - 5517 Triple(三维偏序-二维树状数组/CDQ分治)

    题目链接:点击查看 题目大意:给出 n 个二元对 ( a , b ) 和 m 个三元对 ( c , d , e ),对于所有 b == e 的二元对和三元对,可以通过某种运算形成一个新的三元对 ( a ...

  7. 在主方法中定义一个大小为10*10的二维字符型数组,数组名为y,正反对角线上存的是‘*’,其余 位置存的是‘#’;输出这个数组中的所有元素。...

    //在主方法中定义一个大小为10*10的二维字符型数组,数组名为y,正反对角线上存的是'*',其余 位置存的是'#':输出这个数组中的所有元素.char [][]y=new char [10][10] ...

  8. python二维、三维、思维数组之间的转化

    python二维.三维.思维数组之间的转化 import numpy as np# 假设你有一个二维数组,形状为(32,10000) gray = np.random.randint(0, 256, ...

  9. szu 寒训第二天 树状数组 二维树状数组详解,以及树状数组扩展应用【求逆序对,以及动态第k小数】

    树状数组(Binary Index Tree) 树状数组可以解决可以转化为前缀和问题的问题 这是一类用以解决动态前缀和的问题 (有点像线段树简版) 1.对于 a1 + a2 + a3 + - + an ...

  10. [蓝桥杯][算法训练VIP]暗恋(二维树状数组)

    题目描述 同在一个高中,他却不敢去找她,虽然在别人看 来,那是再简单不过的事.暗恋,是他唯一能做的事.他只能在每天课间操的时候,望望她的位置,看看她倾心的动作,就够了.操场上的彩砖啊,你们的位置,就是 ...

最新文章

  1. 【NLP】四万字全面详解 | 深度学习中的注意力机制(四,完结篇)
  2. 空类-自动生成的函数
  3. Flink笔记--深度全面总结
  4. codevs 3186 队列练习2
  5. php四种基础算法:冒泡,选择,插入和快速排序法PHP基础教程
  6. 我是不是得工作恐惧症了
  7. pytorch中保存和加载模型
  8. (转)量化投资大师采访摘录-詹姆斯·西蒙斯 James Simons
  9. C99标准的新特性介绍
  10. STC12C2052AD+TM1640+DS1302闹钟
  11. 盘点常见元器件级性识别方法
  12. STM32学习之红外遥控
  13. H5多点触控原理以及对多点触控的追踪
  14. 毕业旅行 | 伦敦5日游行程推荐
  15. IPAM——IP地址管理
  16. R语言基础学习记录4:重要函数
  17. win10 更新1809版后彻底关闭系统自动更新的方法
  18. 2015年6月9日晨_学习
  19. c语言基础知识(知识点较为完整)
  20. 【应用随机过程】07. 平稳过程

热门文章

  1. 1064用ctype库解决
  2. 使用STVP 下载STM32程序之后,弹出 Problem while trying to Run core of device. 的解决办法
  3. Android实现连点按钮三下退出程序
  4. pdf怎么移除权限口令,忘记pdf密码如何找回?
  5. 80386汇编_全局描述表GDT介绍
  6. 计算适应度函数(目标函数)(单目标)
  7. 前端框架(混合开发框架)
  8. 计算机二级都有题库的吗,全国计算机二级考试的题库每年都变吗?我能不能拿去年的未来教育的题库来做,还会有原题吗?急...
  9. VTK学习笔记(二十三)vtk空间几何变换
  10. 腾讯云区块链使用心得