nextInt() 和 parseInt() 都是用于將字符串轉換為整數的方法,但它們之間存在一些區別:
所屬類:nextInt() 是 java.util.Scanner 類的一個方法,用于從輸入流中讀取下一個整數。而 parseInt() 是 java.lang.Integer 類的一個靜態方法,用于將字符串解析為整數。
使用場景:nextInt() 主要用于從用戶輸入或其他數據源(如文件、網絡連接等)中讀取整數。parseInt() 可以用于任何需要將字符串轉換為整數的場景。
異常處理:nextInt() 方法在遇到非整數輸入時會拋出 InputMismatchException 異常。為了處理這種異常,你需要使用 try-catch 語句捕獲異常。而 parseInt() 方法在遇到非整數輸入時會返回一個默認值(通常是 0),但不會拋出異常。如果你需要處理非整數輸入,可以使用 Integer.parseInt() 方法,并檢查返回值是否為 null。
參數類型:nextInt() 方法接受一個 int 類型的參數,用于指定讀取的整數范圍。而 parseInt() 方法接受一個 String 類型的參數,用于指定要解析的字符串。
下面是一些示例代碼:
使用 nextInt():
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入一個整數:");
int number = scanner.nextInt();
System.out.println("你輸入的整數是:" + number);
}
}
使用 parseInt():
public class Main {
public static void main(String[] args) {
String input = "123";
int number = Integer.parseInt(input);
System.out.println("解析后的整數是:" + number);
}
}