Java二维数组讲解

  

Java二维数组讲解

什么是二维数组?

Java中的二维数组是指由多个一维数组组成的数组。可以将其理解为一个表格,具有行和列两个维度。在Java中,二维数组是一种引用类型,需要通过new操作符进行初始化。

如何声明和初始化二维数组?

在Java中,可以使用如下方式声明和初始化二维数组:

// 声明一个2 x 3的整型数组
int[][] arr = new int[2][3];

// 声明并初始化一个3 x 3的字符串数组
String[][] arr2 = {{"a", "b", "c"}, {"d", "e", "f"}, {"g", "h", "i"}};

第一个例子声明了一个2 x 3的整型数组,需要注意的是,此时数组中每个元素都为0。

第二个例子声明并初始化了一个3 x 3的字符串数组,其中每个元素都有对应的值。

如何访问二维数组中的元素?

二维数组中的元素可以通过使用索引来进行访问。

// 访问第一行第二列的元素,输出值为0
System.out.println(arr[0][1]);

// 访问第二行第三列的元素,输出值为"f"
System.out.println(arr2[1][2]);

需要注意的是,索引从0开始,因此第一行为0,第一列为0,以此类推。

如何遍历二维数组?

有两种方式可以遍历二维数组,分别是使用嵌套循环和使用foreach语句。

// 使用嵌套循环遍历二维数组
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();
}

// 使用foreach语句遍历二维数组
for (String[] row : arr2) {
    for (String str : row) {
        System.out.print(str + " ");
    }
    System.out.println();
}

使用嵌套循环可以按照行列的方式遍历二维数组,而使用foreach语句可以简化代码。

示例说明

示例一

假设有一个学生成绩的二维数组,每一行代表一个学生的成绩,其中每列分别代表语文、数学、英语的成绩。现在需要计算每个学生的总成绩。

// 声明并初始化成绩表
int[][] scores = {{80, 90, 75}, {85, 77, 92}, {70, 85, 90}};

// 计算每个学生的总成绩并输出
for (int i = 0; i < scores.length; i++) {
    int total = 0;
    for (int j = 0; j < scores[i].length; j++) {
        total += scores[i][j];
    }
    System.out.println("学生" + (i + 1) + "的总成绩为:" + total);
}

输出结果为:

学生1的总成绩为:245
学生2的总成绩为:254
学生3的总成绩为:245

示例二

假设有一个存储用户信息的二维数组,每一行代表一个用户,其中第一列代表用户ID,第二列代表用户姓名。

// 声明并初始化用户信息表
String[][] users = {{"1001", "张三"}, {"1002", "李四"}, {"1003", "王五"}};

// 遍历用户信息表并输出
for (String[] user : users) {
    System.out.println("用户ID为:" + user[0] + ",姓名为:" + user[1]);
}

输出结果为:

用户ID为:1001,姓名为:张三
用户ID为:1002,姓名为:李四
用户ID为:1003,姓名为:王五
相关文章