因此,我一直在關注我正在處理的這種方法。基本上,我需要接受輸入的方法,檢查它是否是一個數字,然後查看它是否在最大值和最小值之間。Java - 連續檢查輸入是否爲雙精度型
我目前遇到的問題是,當我要求用戶輸入一個新的號碼,因爲它們的輸入爲0之前或大於1,000,000。當用戶輸入數字以外的任何東西時,它會崩潰。有任何想法嗎?
如果你決定告訴我怎麼用try/catch語句修復;你能告訴我它是如何工作的嗎?我不是100%確定那些工作如何!
的代碼已經被編輯用最新版本
public static double inRange(Scanner scan, int min, int max) {
double Amount = 0.0;
boolean isValid = false;
while(isValid == false) {
if(scan.hasNextDouble()) {
Amount = scan.nextDouble();
if(Amount > max) {
System.out.print("Error: You cannot enter a number greater than $1,000,000. Try again: ");
}
else if(Amount < min) {
System.out.print("Error: You cannot enter a negative number. Try again: ");
}
else {
isValid = true;
break;
}
}
else {
System.out.print("Error: You must enter a number! Try again: ");
scan.next();
}
}
return Amount;
}
你需要比「它崩潰」更具體。什麼是錯誤? – Blorgbeard 2015-04-02 03:32:04
@Blorgbeard這裏是我輸入的輸入圖片,然後它崩潰了程序。 http://gyazo.com/94e04444c5bb8318022a09fcc199394f – Dom 2015-04-02 04:01:17