當輸入無效(空,等等,都crashes.Any想法?即使有效輸入,我也會得到「無效」結果,任何人都知道爲什麼?
我已經想盡各種辦法重新安排代碼,但我不能使它發揮作用。 當有效輸入推出的應用程序工作正常
public class fourth extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fourth);
final Button calc = (Button) findViewById(R.id.calculeaza);
final EditText e1 = (EditText) findViewById(R.id.inaltime);
final EditText e2 = (EditText) findViewById(R.id.greutate);
final TextView t1 = (TextView) findViewById(R.id.rezultat);
calc.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String text = e1.getText().toString();
String text2 = e2.getText().toString();
if (text == (",") || text == ("") || text == ("-") || text2 == (",") || text2 == ("") || text2 == ("-"))
{
float num1 = Float.parseFloat(e1.getText().toString());
float num2 = Float.parseFloat(e2.getText().toString());
float sum = (num2/((num1 * num1)/10000));
t1.setText(Float.toString(sum));
} else {
t1.setText("Invalid");
}
}
});
}
}
首先,要比較字符串,請使用'equals'而不是'=='。 接下來,只有當它是空字符串,昏迷或減號時,纔會嘗試將字符串轉換爲浮點。你期望如何工作? – jhamon
提示:逆轉你的狀態 – jhamon
定義'輸入','有效','無效','崩潰',...然後想一想你爲什麼要調用'String,toString()'這樣的問題。 – EJP