有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java数组2d循环超出范围

我是Java新手

我的循环数组超出了范围。我觉得我的代码很好

有人能帮我吗

String[][] seats = new String[5][3];

for(int r = 1; r <= seats.length; r++){
        System.out.printf(r+ "." );

        for (int c = 1; c <= seats[r].length; c++){
            System.out.print("  0");
        }

        System.out.println("");
    }

共 (3) 个答案

  1. # 1 楼答案

    数组从键0开始,在数组结束。长度-1

    String[][] seats = new String[5][3];
    
    for(int r = 0; r < seats.length; r++){
            System.out.printf(r+ "." );
    
            for (int c = 1; c <= seats[r].length; c++){
                System.out.print("  0");
            }
    
            System.out.println("");
        }
    
  2. # 2 楼答案

    Java数组索引是基于0的,所以它从0到0。长度-1。替换<;=与<;应该做

  3. # 3 楼答案

    java中的数组是基于零的。因此,循环必须从索引0开始,结束位置低于数组。长度for(int r = 0; r < seats.length; r++){

    String[][] seats = new String[5][3];
    
    for(int r = 0; r < seats.length; r++){
            System.out.printf(r+ "." );
    
            for (int c = 0; c < seats[r].length; c++){
                System.out.print("  0");
            }
    
            System.out.println("");
        }