當使用valueOf
方法將字符串轉換為數值時,如果字符串不是有效的數值表示,那么該方法可能會拋出異常
try-catch
語句捕獲異常:public static void main(String[] args) {
String str = "not a number";
try {
int num = Integer.valueOf(str);
System.out.println("The number is: " + num);
} catch (NumberFormatException e) {
System.err.println("Invalid input: " + e.getMessage());
}
}
valueOf
方法之前,使用正則表達式或其他方法驗證字符串是否為有效的數值表示。例如,使用matches
方法和正則表達式:public static void main(String[] args) {
String str = "not a number";
if (str.matches("^-?\\d+$")) {
int num = Integer.valueOf(str);
System.out.println("The number is: " + num);
} else {
System.err.println("Invalid input: not a valid number");
}
}
這樣一來,在調用valueOf
方法之前,你就可以確保字符串是一個有效的數值表示,從而避免拋出異常。