定义
1)第一种方式:
int[][] arr = new int[3][4];
上面的代码相当于定义了一个3*4的二维数组,即二维数组的长度为3,二维数组中的每个元素又是一个长度为4的数组
2)第二种方式:
int[][] arr = new int[3][];
第二种方式和第一种类似,只是数组中每个元素的长度不确定。
3)第三种方式(最简洁,最常用)
int[][] arr = {{1,2},{3,4,5,6},{7,8,9}};
对二维数组中元素的访问也是通过角标的方式,如arr[0][1] 代表访问二维数组中第一个元素数组的第二个元素。
二维数组遍历
class Demo08 { public static void main(String[] args) { //二维数组遍历 int[][] arr={{1,2,3,4},{5,6,7,8}}; 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 Demo08 { public static void main(String[] args) { int sum=0; int[][] arr={{1,2,3,4},{5,6,7,8}}; for(int i=0;i<arr.length;i++){ for(int j=0;j<arr[i].length;j++){ sum+=arr[i][j]; //累加求和 } } System.out.println("sum="+sum); } }
练习1:
统计一个公司三个销售小组中每个小组的总销售额以及整个公司的销售额:
第一小组销售额为{11, 12}万元
第二小组销售额为{21, 22, 23}万元
第三小组销售额为{31, 32, 33, 34}万元。
class TotalSales { public static void main(String[] args) { int[][] sales={{11,12},{21,22,23},{31,32,33,34}}; int total=0; //总销售额 for(int i=0;i<sales.length;i++){ int group=0; //小组销售额 for(int j=0;j<sales[i].length;j++){ group+=sales[i][j]; } System.out.println("第"+(i+1)+"组销售额为:"+group+"万元"); total+=group; } System.out.println("总销售额为:"+total+"万元"); } }