二维数组初始化和遍历

二维数组示意图

  /*
   *   1  2  3
   *   4  5  6
   */

二维数组定义:有行有列的数组,每获取一个元素值,都需要两个坐标点。 

若将一维数组比作在数轴上排序,则二维数组则是在坐标轴上分布。

二维数组可以称作是数组(一维)的数组

二维数组中的一行就是一个一维数组

二维数组的定义和初始化

数据类型[ ][ ] 数组名 = new 数据类型[行数][列数]

int[ ][ ] array = new int[3][4];

二维数组动态初始化

int[][] array = new int[3][4];

array[0][1]= 1;

array[0][1] = 2;

array[0][2] = 3;

array[0][3] = 4;

二维数组一次为一行赋值,每一行都是一个一维数组

//二维数组名[行号];获取了二维数组中一行的数据(一维数组)

array[1] = new int[]{5,6,7,8};

array[2] = new int[]{9,10,11,12};

二维数组的静态初始化

int[][] arr = {{1,2},{3,4,5},{6,7}}; 

 二维数组初始化(动静结合)

 int[][] arra = new int[][]{{1,2}};

 二维数组的遍历

注意:在一维数组中array.length表示数组的长度

          在二维数组中array.length表示二维数组中的行数

for(int i = 0;i< array.length;i++){
    //内侧循环遍历该行的每一列
    int[] tmp = array[i];
    for (int j=0;j< tmp.length;j++){
        System.out.print(tmp[j]+" ");
    }
    System.out.println();
}
//增强for循环的二维数组遍历
for (int[] tmp:array) {
    for (int w:tmp) {
        System.out.print(w+" ");
    }
    System.out.println();
}

二维数组的练习 

要求输出如下

/*

 * 1

 * 1 1

 * 1 1 1

 * 1 1 1 1

 */

 


int[][] b =new int[4][];
//        System.out.println(b[0]);
//        //由于每一行都是一个null,所以才需要先给行开辟新空间
//        //b[0][0]=1;
//        b[0] = new int[1];
//        b[0][0] = 1;
//        b[1] = new int[2];
//        b[1][0] = 1;
//        b[1][1] = 1;
//        b[2] = new int[]{1,1,1};
//        b[3] = new int[]{1,1,1,1};
//        b[2][2] = 4;//改变二维数组中元素的值
//        for(int[] tmp_2:b){
//            for (int q:tmp_2){
//                System.out.print(q+" ");
//            }
//            System.out.println();
//        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值