我正在編寫一個家庭作業的程序,我需要驗證用戶輸入,然後創建一個對象並將其添加到數組列表中。我已經包含了我認爲是相關的代碼,但我確實是一個初學者,所以讓我知道是否有其他東西需要看。Java:正確的方法來拋出並捕獲異常來驗證輸入
我讓用戶輸入一個字符串,然後檢查,看看它雙。如果它不是一個雙,我把我確保它是一個數字,我在其他類我檢查,以確保它是我想要的範圍後創建
try{
price = Double.parseDouble(strPrice);
}
catch(NumberFormatException nfe){
CDException cde = new CDException();
cde.setMessage("Price must be a number,\nCannot create CD");
throw cde;
}
異常。 (在這種情況下,非負),然後創建一個對象與價值
public void setPrice(double newPrice)throws Exception{
if(newPrice >= 0){
this.price = newPrice;
}
else{
CDException cde = new CDException();
cde.setMessage("CD Price cannot be negative,\nCannot create CD");
throw cde;
}
}
所以我的問題是...
有沒有辦法一步到位做到這一點,同時檢查用戶輸入了數字並且該數字不是負數。另一件事是,如果輸入是空白的,那就是結束輸入循環的指令。
你的代碼看起來不錯。我提供的唯一建議是將'message'參數傳遞給異常構造函數。 – erickson
感謝您的意見和建議。我們正在使用老師爲我們提供的例外課 –