无法在 Java Swing 计算器中使用等于按钮

因此,在单击功能按钮后,我的程序将当前数字(num1)存储在计算器上,然后存储选择的功能。当按下等于按钮时,它应该确定选择的最后一个函数是什么并将其应用于前一个数字和当前数字(num2)并显示解决方案,请帮助。

我不认为 equals 部分中的代码正在执行,因为我放在 if(lastButtonPressed == bDivide) 下的 println 没有打印。

所以事实证明 lastButtonPressed 没有被更新。不知道为什么。


HUH函数
浏览 145回答 1
1回答

叮当猫咪

所以事实证明 lastButtonPressed 没有被更新public void actionPerformed(ActionEvent e){    Object buttonPressed = e.getSource();    Object lastButtonPressed = null;它正在更新,但问题是您更新该值,然后在下次调用 ActionListener 时将该值重置为 null。因此,每次调用 ActionListener 时,您都会丢失有关最后按下的按钮的信息。另外,不要使用“==”来比较字符串。if(input.getText() == "0"){而是使用该equals(...)方法。if ("0".equals(input.getText()) {注意我也颠倒了顺序。这将防止 input.getText() 方法返回空对象时出现错误。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java