我正在尝试读取这种格式的输入
4 4
* . . .
. . . .
. * . .
. . . .
4 4
* * . .
. . . .
. . . .
. . * .
我能够读取前两个数字,当我尝试读取符号时出现异常。我可以使用 BufferedReader 读取每一行并解析输入,但为什么我不能使用扫描仪执行此操作?
这是我的代码
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNextLine()) {
Scanner s = new Scanner(in.nextLine());
if (!s.hasNextLine())
break;
int x = s.nextInt(); // 4
int y = s.nextInt(); // 4
for (int i = 0; i <= x - 1; i++) {
for (int j = 0; j <= y - 1; j++) {
System.out.println(s.hasNext()); // false
String symbol = s.next(); //NoSuchElementException WHY?
}
}
}
}
}