誰能請解釋爲什麼下面的代碼的行爲出現異常:System.in.read()不阻止讀取更多輸入字符?
public class UserInputTest {
public static void main(String[] args) throws IOException {
int n=3;
char[] arr = new char[n];
for (int i=0; i<n; i++) {
System.out.println(i+1 + " character :");
arr[i] = ((char)System.in.read());
}
System.out.println("You Entered : ");
for (int i=0; i<n; i++) {
System.out.println(arr[i]);
}
}
}
OUTPUT:
1個字符:
ü
2字符:
3字:
您輸入:
u
我期待它阻止用戶輸入值的三次。 有何評論?
謝謝
莫希特
思路探索:1)打印出的「你輸入的字母」 *字符代碼*;怎麼了? 2)將'n'改爲6;怎麼了? – 2012-07-01 04:55:54
@pst:不是重複的。當用戶鍵入它們時,OP不需要獲取這些字符。 –