我想将输入作为带空格的单行,然后将该数据输入到二维数组中。

String[][] examples = new String[100][100];
for (int i = 0; i < 2; i++) {
    System.out.println("enter line " + i);
    String line = sc.next();
    String[] linearr = line.split("\\s+");
    for (int j = 0; j < 5; j++) {
        examples[i][j] = linearr[j];
        System.out.println(linearr[j]);
    }
}


只有linearr[0]获取输入的值...linearr[1] , linearr[2],所以不要获取值,而是说索引超出范围。

最佳答案

sc.next()仅返回第一个单词。

sc.nextLine()返回整行。

而不是

for(int j=0;j<5;j++)
{
    examples[i][j]=linearr[j];
    System.out.println(linearr[j]);
}


你可以做

examples[i] = linearr;

10-04 12:58