11 二维数组初窥

11 二维数组初窥

定义语法

变量类型[] [] 名称 = new 变量类型[a] [b];

a代表的是能存放多少个一维数组

b代表每一个一维数组里面能存放多少个变量

a*b代表着该二维数组能够存储的元素的个数

如:int[] [] temp = new int[5] [6];

​ 意思是定一个了一个名字为temp的二维数组,它能存放5个长度为6的一维数组,即一共可以存放三十个元素

具体操作

1.赋值

第一种,初始化赋值

   int[][] a={{22},{33},{44,88,99}};

第二种:通过for循环赋值

   int[][] a=new int[5][6];
   System.out.println("能存放一维数组的个数"+a.length);
   System.out.println("第一个一维数组能存放元素的个数"+a[0].length);
   //第二种: 通过for循环赋值(所有值都一样)
   for (int i = 0; i < a.length; i++) {
       for (int j = 0; j < a[i].length; j++) {
              a[i][j]=10;
        }
    }
   //补充:如果想赋值不同的值,直接赋值即可,如a[0][4]=9;a[1][2]=-7

2.取值

第一种 for循环输出

  for (int i = 0; i < a.length; i++) {
      for (int j = 0; j < a[i].length; j++) {
            System.out.print(a[i][j]+"\t");
      }
      System.out.println();
   }

第二种 foreach循环输出

  for (int[]data : a) {
      //把原数组的地址赋值给新数组
      for (int i : data) {
           System.out.print(i+"\t");   
      }
      System.out.println();//每输出一个二维数组就换行
   } 

3.取最大值或最小值

第一种 for循环

 int max=-999999,min=99999999;
 for (int i = 0; i < a.length; i++) {
   for (int j = 0; j < a[i].length; j++) {
       if(max<=a[i][j]){
           max=a[i][j];
       }
       if(min>=a[i][j]){
           min=a[i][j];
        }
     }
 }
 System.out.println("二维数组中最大值为:"+max);
 System.out.println("二维数组中最小值为:"+min);  

第二种 foreach

 //foreach循环(底层为迭代器)
//foreach定义一个新数组来接收原数组的地址
  for (int[]data : a) {
     //把原数组的地址赋值给新数组
        for (int i : data) {
             if(i>max){
                max=i;
             }
             if(i<min){
                min=i;
              }
         }
    }
    System.out.println("二维数组中最大值为:"+max);
    System.out.println("二维数组中最小值为:"+min);        
posted @ 2020-11-27 22:41  SSS翱翔万里  阅读(102)  评论(0编辑  收藏  举报