Scanner 與nextInt() 發生錯誤
Scanner 類別是從控制台讀取輸入的便捷工具,但它可能會引發類似錯誤如果您嘗試讀取輸入流中不存在的類型,則會出現NoSuchElementException。
在提供的程式碼中:
Scanner s = new Scanner(System.in); int choice = s.nextInt();
nextInt() 方法嘗試從標準輸入流,但如果沒有可用的整數,則會拋出 NoSuchElementException。為了避免此錯誤,請始終使用hasNextInt() 方法檢查是否有整數可供讀取:
Scanner s = new Scanner(System.in); while(s.hasNextInt()) { int choice = s.nextInt(); // Process the input } s.close();
此程式碼將循環,直到沒有更多整數可供讀取,從而消除了NoSuchElementException 的風險。此外,如果沒有整數可供讀取,請使用 hasNextInt() 方法來防止進入無限迴圈。
以上是使用 Scanner.nextInt() 時如何避免 NoSuchElementException?的詳細內容。更多資訊請關注PHP中文網其他相關文章!