4 回答

TA貢獻1862條經驗 獲得超7個贊
當掃描器拋出InputMisameException時,掃描器將不會傳遞導致異常的令牌,從而可以通過其他方法檢索或跳過該令牌。
int
InputMismatchException
reader.nextInt()
reader.next()
catch
...} catch (InputMismatchException e) { System.out.println("Invalid value!"); reader.next(); // this consumes the invalid token}

TA貢獻1845條經驗 獲得超8個贊
String line = reader.nextLine();Scanner sc = new Scanner(line);
public int readInt(String msg) { int num = 0; boolean loop = true; while (loop) { try { System.out.println(msg); String line = reader.nextLine(); Scanner sc = new Scanner(line); num = sc.nextInt(); loop = false; } catch (InputMismatchException e) { System.out.println("Invalid value!"); } } return num; }

TA貢獻1772條經驗 獲得超8個贊
讀取器獲得非int字符時退出 EOF時退出
添加回答
舉報