我最近开始学习编程,我正在写一个咖啡订购应用程序。我有一个"价格"字段,您输入一杯咖啡和其他一些选项的基本价格。现在,如果我在价格字段为空时点击"订单"按钮,应用程序就会崩溃。我试图从问题中添加代码行,是否有可能在EditText中同时具有默认值和提示。这是计算价格的方法的代码位,复选框是咖啡浇头的复选框,功能良好:
// Calculates the price
private int calculatePrice(int quantity) {
// Price per cup in field
EditText pricePerCupF = (EditText) findViewById(R.id.basic_price);
boolean whippedChecked = ((CheckBox) findViewById(R.id.whipped_cream)).isChecked();
boolean chocolateChecked = ((CheckBox) findViewById(R.id.chocolate)).isChecked();
int pricePerCup = Integer.parseInt(pricePerCupF.getText().toString());
if (whippedChecked) {
pricePerCup += 1;
}
if (chocolateChecked) {
pricePerCup += 1;
}
if (pricePerCupF.getText().toString().equals("")) {
return 0;
}
else {
int price = pricePerCup * quantity;
return price;
}
谢谢!
Put
if (pricePerCupF.getText().toString().equals("")) {
return 0;
}
之前 int pricePerCup = Integer.parseInt(pricePerCupF.getText().toString());
这样,如果字段为空,您可以在解析/强制转换错误出现之前退出函数。