我正在尝试在 java gui 中构建一个计算器

im trying to build a calculator in java gui

每次单击新按钮时,它都会替换文本字段中的 num 变量。我希望它在我单击不同的按钮时一个接一个地显示每个新数字,然后最终我将 add/subtract/multiply 并将它们相除,如果可能的话,你可以告诉我如何对两个不同的数字块进行数学运算. 您的帮助将不胜感激

private class TheHandler implements ActionListener{

    public void actionPerformed(ActionEvent e) {

        //add values to buttons
        String num = "";
        if(e.getSource()==btn[0]){
            //tDisplay.setText("7");
            num = "7";
        }else if(e.getSource()==btn[1]){
            //tDisplay.setText("8");
            num = "8";
        }else if(e.getSource()==btn[2]){
            //tDisplay.setText("9");
            num = "9";
        }else if(e.getSource()==btn[5]){
            //tDisplay.setText("4");
            num = "4";
        }else if(e.getSource()==btn[6]){
            //tDisplay.setText("5");
            num = "5";
        }else if(e.getSource()==btn[7]){
            //tDisplay.setText("6");
            num = "6";
        }else if(e.getSource()==btn[10]){
            //tDisplay.setText("1");
            num = "1";
        }else if(e.getSource()==btn[11]){
            //tDisplay.setText("2");
            num = "2";
        }else if(e.getSource()==btn[12]){
            //tDisplay.setText("3");
            num = "3";
        }else if(e.getSource()==btn[15]){
            //tDisplay.setText("0");
            num = "0";
        }

        //set the values to the text field

        tDisplay.setText(num);

    }

}

这是代码

tDisplay.setText(tDisplay.getText()+num);

验证是否先按了 0 以避免像这样的数字“015”

if (tDisplay.getText().equals("0"))
    tDisplay.setText(num);
else
    tDisplay.setText(tDisplay.getText()+num);

当您按下运算符按钮时必须存储值并修改标志,而当按下等于按钮时存储写入的第二个值并执行所选操作(使用标志的值)。