首頁 > Java > java教程 > 使用Java的掃描器處理無效整數輸入時如何防止無限循環?

使用Java的掃描器處理無效整數輸入時如何防止無限循環?

Patricia Arquette
發布: 2024-12-11 17:08:18
原創
281 人瀏覽過

How to Prevent Infinite Loops When Handling Invalid Integer Input with Java's Scanner?

try/catch with InputMismatchException 循環問題

嘗試使用try/catch 區塊和InputMismatchException 處理用戶輸入時,您可能會遇到如果輸入不是整數,則無限循環。若要解決此問題,請確保呼叫 next() 使掃描器前進到無效輸入之前。

catch (Exception e) {
    System.out.println("Error!");
    input.next(); // Advance past invalid input
}
登入後複製

此外,建議在讀取之前使用 hasNextInt() 檢查有效的整數輸入。

while (bError) {
    if (scanner.hasNextInt())
        n1 = scanner.nextInt();
    else {
        scanner.next(); // Advance past invalid input
        continue;
    }
    // Repeat for n2
}
登入後複製

這種方法確保掃描器跳過非整數輸入並僅繼續處理有效值,從而消除了異常的需要處理。

以上是使用Java的掃描器處理無效整數輸入時如何防止無限循環?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板