Java数组——二维数值数组
二维数值数组的创建
二维数组定义:二维数组是指以一维数组作为元素的数组。其中存储数值的二维数组叫做二维数值数组。
二维数组创建语法:
m表示二维数组有多少个数组(行),n表示每个一维数组的元素个数(列)
数据类型[][] 变量名=new 数据类型[m][n];
二维数值数组创建示例:
int[][] arr=new int[6][3]; // 创建一个用于存储图1成绩的二维数值数组。
二维数组初始化
数组初始化分为两种:动态初始化和静态初始化。
动态初始化:创建数组时,指定数组长度,但不指定数组存储的具体值。
示例:
int[][] arr=new int[6][3]; // 创建一个用于存储图1成绩的二维数值数组。
xz:创建数组时,指定数组存储的具体值。
示例:
int[][] arr={{90,88,87},{89,90,77},{66,78,60}}; // 方式一,注意只能使用{}
int[][] arr=new int[][]{{90,88,87},{89,90,77},{66,78,60}}; // 方式二
二维数值数组元素的引用
我们可以使用数组名[x][y]的方式来访问数组,其中数组的索引 x 和 y 都从 0 开始。
示例:
public static void main(String[] args) {
int[][] ints = new int[][]{{2,3},{4,5,6}};
System.out.println(ints[0][1]); // ints[0][1] 表示二维数组的第一行第二列
}
执行结果:
3
我们可以使用两个 for 循环遍历二维数组的每个值,其中第一个 for 循环遍历行,第二 个 for 循环遍历每一行的各列。
示例如下:
public static void main(String[] args) {
int[][] arr = new int[][]{{2,3},{4,5,6}};
for(int x=0;x<arr.length;x++){ // 遍历行
for(int y=0;y<arr[x].length;y++){ // 遍历列
System.out.print(arr[x][y]+" ");
}
System.out.println();
}
}
输出结果:
2 3
4 5 6
Java数组之二维数值数组之多科成绩统计
注意:图 1 中的是一号学生等中文类型的数字,而本关要求输出时改为阿拉伯数字。
例如:一号学生的成绩。
输出:“1号学生的总分:xx”。
/*
* 任务:统计每人的总分。
* 输出样式:x号学生的总分:y
*
* */
public class PassWord {
public static void main(String[] args) {
// 创建二维数组存储所有人的成绩
int[][] arr = new int[][]{{90,88,87},{89,90,77},{66,78,60},{77,90,90},{89,78,67},{78,87,88}};
// 请在 Begin-End 间编写代码
/********** Begin **********/
// 第一步:对每个人的各科成绩求和
for(int i=0;i<arr.length;i++){
int sum = 0;
for(int j=0;j<arr[i].length;j++){
sum+=arr[i][j];
}
System.out.printf("%d号学生的总分:%d\n",i+1,sum);
}
// 第二步:输出每个人的总分数
/********** End **********/
}
}
测试:
—— 预期输出 ——
1号学生的总分:265
2号学生的总分:256
3号学生的总分:204
4号学生的总分:257
5号学生的总分:234
6号学生的总分:253