java - 有没有更类似于 C 的方法在 Java 中打印 2D 数组?

标签 java arrays multidimensional-array

我目前正在学习java,当我来到“多维数组”类(class)时我有点困惑。我想知道为什么嵌套循环在其终止处 counterVar < 2dArrayName[row].length 。为什么我们需要 2DArray 旁边的参数 [row]?

示例代码:

import java.util.Scanner;

public class Program {
    public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    String [][] arr = new String [2][2];

        for(int row = 0; row < arr.length;row++) {
            for(int column = 0; column < arr[row].length; column++) {
                arr[row][column] = sc.nextLine();
             }
        }
    }
}

最佳答案

在 Java 中这是有效的:

String[][] demo = { {"test1","test2","test3"}, {"test4","test5"}, {"test6"}};

有了这样的构造,你就可以成功执行

System.out.println(demo[0][2]);

但是

System.out.println(demo[1][2]);

将导致 ArrayIndexOutOfBoundsException,因为第二行只有 2 个条目,而不是像第一行那样有 3 个条目。

关于java - 有没有更类似于 C 的方法在 Java 中打印 2D 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51258744/

相关文章:

arrays - JSON 数组列转换为 JSON 对象

javascript - 遍历嵌套数组并转换为对象

java - Guice - Jersey - Servlet 绑定(bind)

arrays - 在 Swift 中将 JSON 嵌套到数组

java - 如何通过ID检查数据是否已经存在

arrays - excel用数组压缩公式

php foreach 多维数组递归不起作用?

c++ - 使用 STL 按列对二维数组进行排序

java - Junit 5 - 没有为参数注册 ParameterResolver

java - 将 Java SSL 服务器连接到 Java SSL 服务器