您可以檢查是否priceField
包含字符串使用此:
JTextField priceField;
int price;
try {
// Check whether priceField.getText()'s length equals 0
if(priceField.getText().getLength()==0) {
throw new Exception();
}
// If not, check if it is a number and if so set price
price = Integer.parseInt(priceField.getText());
} catch(Exception e) {
// Either priceField's value's length equals 0 or
// priceField's value is not a number
// Output error, reset priceField and break the code
System.err.println("Price error, is the field a number and not empty?");
priceField.setText("");
break;
}
當if語句爲真(如果priceField.getText()
長度爲0)拋出異常,這將觸發catch-block,發出錯誤,重置priceField
和break
的代碼。
如果if語句雖然爲假(如果priceField.getText()
的長度大於或小於0),它將檢查priceField.getText()
是否是一個數字,如果是,則將price
設置爲該值。如果它不是一個數字,則拋出一個NumberFormatException異常,這將觸發catch-block等。
讓我知道它是否有效。
編碼愉快:) -Charlie
如果你想在Java虛擬機的正常運行期間拋出你的異常
這是如此醜陋... – slnowak 2014-11-01 19:37:35