我使用以下代碼段從java中的控制檯獲取10個輸入,並嘗試以*******12
格式打印它們。在運行時,我輸入12,13,14,15作爲輸入,然後程序終止。現在有3個問題:在java中獲取來自控制檯的輸入
- 爲什麼這個代碼只有5個輸入,而不是10?
- 爲什麼這段代碼打印輸入14例如49,52,10?
- 解決方案是什麼?
代碼:
public static void main(String[] args) {
for (int i = 0 ; i <10 ;i++){
try {
int j= System.in.read();
System.out.println("**********"+j);
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
輸出功率爲:
12
**********49
**********50
**********10 13
**********49
**********51
**********10 14
**********49
**********52
**********10 15
**********49
BUILD SUCCESSFUL(總時間:14秒),
是什麼'閱讀()'做什麼?你正在使用它,所以我會假設你已經查閱了它。 –
你可能想閱讀這個http://stackoverflow.com/questions/15446689/what-is-the-use-of-system-in-read-in-java –
「爲什麼這個代碼只有5個輸入,而不是10個? 」。因爲你輸入了10個字節,這是in.read()讀取的內容。 –