【发布时间】:2017-01-14 17:42:26
【问题描述】:
我需要帮助将整数读入 N x N 维的二维方阵。
例如,如果用户输入是:
123
333
414
然后我需要一个数组:
{
{1, 2, 3},
{3, 3, 3},
{4, 1, 4}
}
我遇到的问题是这些整数之间没有空格。如果有空间,我可以做
for (int i = 0 ; i < N; i++) {
for(int j = 0; j < N ; j++) {
myArray[i][j] = scan.nextInt();
}
}
我通过尝试使用子字符串并将其解析到数组中来解决这个问题,尽管我没有得到任何结果。
另一种方法(编辑)
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
myArray[i][j] = Integer.parseInt(scan.nextLine().substring(j, j+1));
}
}
这也不起作用 - 输入三行后它继续运行。
【问题讨论】:
-
将您的输入读取为字符串,使用
toCharArray方法进行转换,然后添加到您的 3 维数组中。 -
有什么办法可以将其保存为二维 int 数组?我刚刚添加了另一种我认为可行的方法。
-
这些整数之间没有空格.......那些整数在 0 到 9 之间呢???
-
试试这个
for (int i = 0; i < N; i++) { String s = scan.nextLine(); for (int j = 0; j < N; j++) { myArray[i][j] = Integer.parseInt(substring(j, j+1)); } }
标签: java arrays multidimensional-array