在Java中,使用Scanner類可以實現輸入驗證。以下是一個簡單的示例,展示了如何使用Scanner驗證用戶輸入的整數是否為正數:
import java.util.Scanner;
import java.util.InputMismatchException;
public class InputValidation {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int number;
System.out.println("請輸入一個正數:");
while (true) {
try {
number = scanner.nextInt();
if (number > 0) {
System.out.println("輸入的正數是:" + number);
break;
} else {
System.out.println("輸入的數字不是正數,請重新輸入:");
}
} catch (InputMismatchException e) {
System.out.println("輸入錯誤,請輸入一個整數:");
scanner.next(); // 清除錯誤的輸入
}
}
scanner.close();
}
}
在這個示例中,我們使用nextInt()
方法讀取用戶輸入的整數。如果輸入的不是整數,nextInt()
方法會拋出InputMismatchException
異常。我們使用try-catch
語句捕獲這個異常,并提示用戶重新輸入。
如果輸入的整數是正數,我們跳出循環,輸出結果。否則,我們繼續提示用戶重新輸入。