java第五天学习知识汇总

时间:2023-01-25 15:35:54
二维数组的定义:
 二维数组:就是元素为一维数组的一个数组。
 
 格式1:
  数据类型[][] 数组名 = new 数据类型[m][n];
  
  m:表示这个二维数组有多少个一维数组。
  n:表示每一个一维数组的元素有多少个。
  
 注意:
  A:以下格式也可以表示二维数组
   a:数据类型 数组名[][] = new 数据类型[m][n];
   b:数据类型[] 数组名[] = new 数据类型[m][n];
  B:注意下面定义的区别
   int x;
   int y;
   int x,y;
   
   int[] x;
   int[] y[];
   
   int[] x,y[];

 格式2:
  数据类型[][] 数组名 = new 数据类型[m][];
  
  m:表示这个二维数组有多少个一维数组。
  列数没有给出,可以动态的给。这一次是一个变化的列数。

 格式3:
  基本格式:
   数据类型[][] 数组名 = new 数据类型[][]{{元素1,元素2...},{元素1,元素2...},{元素1,元素2...}};
  简化版格式:
   数据类型[][] 数组名 = {{元素1,元素2...},{元素1,元素2...},{元素1,元素2...}};
   
  举例:
   int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
   int[][] arr = {{1,2,3},{4,5},{6}};
class Array2Demo {
 public static void main(String[] args) {
  //定义数组
  int[][] arr = new int[3][];
  
  System.out.println(arr); //[[I@175078b
  System.out.println(arr[0]); //null
  System.out.println(arr[1]); //null
  System.out.println(arr[2]); //null
  
  //动态的为每一个一维数组分配空间
  arr[0] = new int[2];
  arr[1] = new int[3];
  arr[2] = new int[1];
  
  System.out.println(arr[0]); //[I@42552c
  System.out.println(arr[1]); //[I@e5bbd6
  System.out.println(arr[2]); //[I@8ee016
  
  System.out.println(arr[0][0]); //0
  System.out.println(arr[0][1]); //0
  //ArrayIndexOutOfBoundsException
  //System.out.println(arr[0][2]); //错误
  
  arr[1][0] = 100;
  arr[1][2] = 200;
 }
}