我需要在 boolean 二维数组中输入并加载一些字符。如果字符为X
,则将数组元素标记为true
;否则,如果 char 为 .
,则将数组元素标记为 false。
这是我的设计:
boolean[][] Array = new boolean[2][2];
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
if (System.in.read() == '.') {
Array[i][j] = false;
} else if (System.in.read() == 'X') {
Array[i][j] = true;
}
}
}
例如,如果我输入 ....
或 XXXX
,它不会产生正确的结果。对于其他输入,结果也不正确。
那么该如何处理呢?
最佳答案
如果第一个字符不是 '.'
,则您将在循环中第二次读取字符。
每个循环只能读取一个字符。将字符保存在 if
语句之前的变量中,然后将该变量依次与 '.'
和 'X'
进行比较。
关于java - 如何在java中使用System.in.read()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22644811/