为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

HUH函数 2021-12-18 15:37:02
因此,在单击功能按钮后,我的程序将当前数字(num1)存储在计算器上,然后存储选择的功能。当按下等于按钮时,它应该确定选择的最后一个函数是什么并将其应用于前一个数字和当前数字(num2)并显示解决方案,请帮助。我不认为 equals 部分中的代码正在执行,因为我放在 if(lastButtonPressed == bDivide) 下的 println 没有打印。所以事实证明 lastButtonPressed 没有被更新。不知道为什么。
查看完整描述

1 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

所以事实证明 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() 方法返回空对象时出现错误。


查看完整回答
反对 回复 2021-12-18
  • 1 回答
  • 0 关注
  • 144 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信