gpt4 book ai didi

java - 程序因文本字段为空而崩溃

转载 作者:行者123 更新时间:2023-12-02 06:53:05 25 4
gpt4 key购买 nike

我需要帮助来修复我的代码。我认为这很简单(可能是),但我无法理解。我有一个简单的加法计算器。它工作正常,但如果我将 1 个或两个数字文本字段留空,程序就会崩溃。

我有 if 语句,但显然我没有告诉它做正确的事情。

public class MainActivity extends Activity {
Double firstNum, secondNum, answerNum;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText first = (EditText) findViewById(R.id.txtFirst);
final EditText second = (EditText) findViewById(R.id.txtSecond);


final TextView answer = (TextView) findViewById(R.id.txtAnswer);



Button calc = (Button) findViewById(R.id.btnCalc);
calc.setOnClickListener(new OnClickListener() {



@Override
public void onClick(View v) {
// TODO Auto-generated method stub

// convert pulled info to double using variable names
firstNum = Double.parseDouble(first.getText().toString());
secondNum = Double.parseDouble(second.getText().toString());

if (first == null || second == null)
{
Toast.makeText(MainActivity.this, "Please Enter value", Toast.LENGTH_SHORT).show();
}
else {

// add numbers
answerNum = (firstNum + secondNum);
//set format
DecimalFormat total = new DecimalFormat ("###,###,###.##");
answer.setText("Answer is " + total.format(answerNum));
}
}
});
}
}

最佳答案

由于以下行而出现异常:Double.parseDouble(second.getText().toString()),它无法将空字符串解析为 double ,因此您应该添加一些验证代码。

关于java - 程序因文本字段为空而崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17777801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com