為了增強程式的穩健性,使用者在將輸入限制為有效整數值和處理非數位條目方面面臨挑戰。流行的庫 Scanner 為這些障礙提供了解決方案。
Scanner 提供了 hasNextInt() 方法,該方法驗證即將到來的輸入是否可以解釋為整數。此方法保持靜態,意味著它不會前進超過任何輸入。
合併hasNextInt() 可以提供一個優雅的解決方案:
Scanner sc = new Scanner(System.in); System.out.print("Enter number 1: "); while (!sc.hasNextInt()) sc.next(); // Skips non-numeric input int num1 = sc.nextInt(); int num2; System.out.print("Enter number 2: "); do { while (!sc.hasNextInt()) sc.next(); // Skips non-numeric input num2 = sc.nextInt(); } while (num2 < num1); // Enforces num2 being greater than num1
由於hasNextXXX 方法保持靜態,因此有必要呼叫next()來丟棄無效輸入中的任何「垃圾」。
以上是如何使用 Java 的掃描器穩健地處理無效整數輸入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!