0
我有以下的Java代碼:InputMismatchException,使用掃描儀
Scanner input = new Scanner(System.in);
try {
System.out.println("Enter your name>>");
String name = input.next();
System.out.println("Enter your year of birth>>");
int age = input.nextInt();
System.out.println("Name: " + name);
System.out.println("Year of Birth: " + age);
System.out.println("Age: " + (2012 - age));
} catch (InputMismatchException err) {
System.out.println("Not a number");
}
當我輸入一個名稱用空格(如「詹姆斯·彼得森」),我正確地得到下一個線路輸出(輸入你的出生年份)然後立即發生InputMismatchException。該代碼使用不帶空格的單個名稱。有什麼我失蹤?
謝謝。任何想法如何我可以解決這個問題? – ReignOfComputer 2013-04-22 04:27:40
沒關係我知道了,我已經將'input.next()'改爲'input.nextLine()'。謝謝! :D – ReignOfComputer 2013-04-22 04:30:17
我想設置'Scanner.useDelimiter(Pattern.compile(「[\\ r \\ n;] +」));'可能會工作,並在下一行輸入每個標記。 – NINCOMPOOP 2013-04-22 04:30:41