二维数组的定义有很多方式:
第一种方式:
数据类型[][] 数组名 = new数据类型[行的个数][列的个数];
下面以第一种方式声明一个数组,如下所示。
int[][] xx= new int[3][4]; 表示有三行,每行方四个数据
第二种方式:
数据类型[][] 数组名 = new int[行的个数][];
下面以第二种方式声明一个数组,如下所示。
int[][] xx= new int[3][];
第二种方式和第一种类似,只是数组中每行元素的长度不确定。
第三种方式:
数据类型[][] 数组名= {{第0行初始值},{第1行初始值},...,{第n行初始值}};
下面以第三种方式声明一个数组,如下所示。
int[][] xx= {{1,2},{3,4,5,6},{7,8,9}};
上面的二维数组arr中定义了三个元素,这三个元素都是数组,分别为{1,2}、{3,4,5,6}、{7,8,9}。
public class shuzu {
public static void main(String[] args){
}
public static void method03()
{
/格式三:数据类型[][] 数组名= {{元素,元素,元素},{元素,元素,元素...}...};
int[][]arr ={{10,20},{30,40,50}};
System.out.println(arr[0][0]);
System.out.println(arr[0][1]);
System.out.println(arr[1][0]);
System.out.println(arr[1][1]);
System.out.println(arr[1][2]);
}
public static void method01()
{
/格式二:数据类型[][] 数组名 = new数据类型[x][];
int[][]arr=new int[2][];
int []arr1={10,20};
int []arr2={30,40,50,60};
arr[0]=arr1;
arr[1]=arr2;
System.out.println(arr[0][0]);
System.out.println(arr[0][1]);
System.out.println(arr[1][0]);
System.out.println(arr[1][1]);
System.out.println(arr[1][2]);
}
public static void method02()
{ /格式一:数据类型[][] 数组名 = new数据类型[x][y];
int[][]arr=new int[2][2];
System.out.println(arr);
System.out.println(arr[0]);
System.out.println(arr[1]);
int []arr1={10,20};
int []arr2={30,40};
arr[0]=arr1;
arr[1]=arr2;
System.out.println(arr[0][0]);
System.out.println(arr[0][1]);
System.out.println(arr[1][0]);
System.out.println(arr[1][1]);
}
}
案例:通过二维数组保存公司销售组的销售数据
求每个销售小组的销售总金额
求公司所有销售小组的总金额
public class shux {
public static void main(String[] args){
int sum=0;
int[][]arre={ {10,20},{30,40},{50,60,70}};
for(int i=0;i<arre.length;i++)
{ int groupsum=0;
for(int j=0;j<arre[i].length;j++)
{
groupsum +=arre[i][j];
}
System.out.println("第"+(i+1)+"个小组总金额:"+groupsum);
sum +=groupsum;
}
System.out.println("公司总金额"+sum);
}
}