我正在尝试使用Netbeans创建一个简单的计算器GUI。
如何从angka1
,angka2
和operator1
输入整数和字符串,以便可以在private void btnHitungMouseClicked(java.awt.event.MouseEvent evt)
中使用
private void angka1ActionPerformed(java.awt.event.ActionEvent evt) {
nilai1=Integer.parseInt(angka1.getText());
}
private void angka2ActionPerformed(java.awt.event.ActionEvent evt) {
nilai2=Integer.parseInt(angka2.getText());
}
private void operator1ActionPerformed(java.awt.event.ActionEvent evt) {
operator=operator1.getText();
}
private void btnHitungMouseClicked(java.awt.event.MouseEvent evt) {
double jawaban=0;
if(operator=="+")
jawaban=nilai1+nilai2;
else if(operator=="-")
jawaban=nilai1-nilai2;
else if(operator=="*")
jawaban=nilai1*nilai2;
else if(operator=="/")
jawaban=nilai1/nilai2;
String hasil=Double.toString(jawaban);
txtHasil.setText(hasil);
这是我要制作的GUI:
如您所见,它似乎不起作用。当我在上面的TextField中输入数字和运算符时,我希望GUI在TextField中给出正确的结果即可。请帮忙。
最佳答案
operator =='+'不比较字符串。它检查对象。
通过右键单击Hitung Button事件>鼠标> MouseClicked创建MouseClicked事件
private void HitungMouseClicked(java.awt.event.MouseEvent evt) {
nilai1 = Integer.parseInt(angka1.getText());
nilai2=Integer.parseInt(angka2.getText());
operator=operator1.getText();
double jawaban=0;
if(operator.equalsIgnoreCase("+"))
jawaban=nilai1+nilai2;
else if(operator.equalsIgnoreCase("-"))
jawaban=nilai1-nilai2;
else if(operator.equalsIgnoreCase("*"))
jawaban=nilai1*nilai2;
else if(operator.equalsIgnoreCase("/"))
jawaban=nilai1/nilai2;
String hasil=Double.toString(jawaban);
txtHasil.setText(hasil);
}