在Java中,nextInt()
方法是Scanner
類的一個方法,用于從輸入流中讀取下一個整數。為了避免輸入錯誤,你可以采取以下幾種方法:
try-catch
語句處理InputMismatchException
異常:當輸入的不是一個整數時,會拋出這個異常。你可以捕獲這個異常并提示用戶重新輸入。import java.util.InputMismatchException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int number;
while (true) {
try {
System.out.print("請輸入一個整數: ");
number = scanner.nextInt();
break;
} catch (InputMismatchException e) {
System.out.println("輸入錯誤,請輸入一個整數!");
scanner.next(); // 清除錯誤的輸入
}
}
System.out.println("你輸入的整數是: " + number);
}
}
while
循環確保輸入正確:在循環中不斷提示用戶輸入,直到輸入正確為止。import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int number;
while (true) {
System.out.print("請輸入一個整數: ");
if (scanner.hasNextInt()) {
number = scanner.nextInt();
break;
} else {
System.out.println("輸入錯誤,請輸入一個整數!");
scanner.next(); // 清除錯誤的輸入
}
}
System.out.println("你輸入的整數是: " + number);
}
}
這兩種方法都可以有效地避免輸入錯誤。第一種方法使用異常處理,當輸入錯誤時會提示用戶重新輸入。第二種方法使用循環和hasNextInt()
方法檢查輸入是否為整數,如果不是整數則提示用戶重新輸入。你可以根據自己的需求選擇合適的方法。