概述: 就是一个数组 , 只不过每一个元素也是一个数组
定义格式:
第一种格式
数据类型[][] 数组名 = new 数据类型[m][n] ; (推荐使用)
数据类型[] 数组名[] = new 数据类型[m][n] ;
数据类型 数组名[][] = new 数据类型[m][n] ;
m: 表示的意思是这个二维数组中一维数组的个数
n: 每一个一维数组中元素的个数
第二种格式:
数据类型[][] 数组名 = new 数据类型[m][] ;
m: 表示的意思是这个二维数组中一维数组的个数
第三种格式:
数据类型[][] 数组名 = {{元素1 , 元素2 , ...} , {元素1 , 元素2 , ...} , {元素1 , 元素2 , ...} ,...} ;
如何获取二维数组的长度: 数组名.length ;
如何获取二维数组的元素: 数组名[m][n]; 获取二维数组中第m+1个一维数组中的第n+1个元素
二维数组遍历
* 外循环控制的是二维数组的长度,其实就是一维数组的个数。
* 内循环控制的是一维数组的长度。
class Test1_Array { public static void main(String[] args) { int[][] arr = {{1,2,3},{4,5},{6,7,8,9}}; for (int i = 0;i < arr.length ;i++ ) { //获取到每个二维数组中的一维数组 for (int j = 0;j < arr[i].length ;j++ ) { //获取每个一维数组中的元素 System.out.print(arr[i][j] + " "); } System.out.println(); } } }
二维数组求和
class Test2_Array { public static void main(String[] args) { int[][] arr = {{22,66,44},{77,33,88},{25,45,65},{11,66,99}}; int sum = 0; //定义变量,记录每次相加的结果 for (int i = 0;i < arr.length ;i++ ) { //获取每一个一维数组 for (int j = 0;j < arr[i].length ;j++ ) { //获取每一个一维数组中的元素 sum = sum + arr[i][j]; //累加 } } System.out.println(sum); } }