永发信息网

java计算器,如果初始状态是0那么再输入其他数字时,把0覆盖掉。例如0,输入6,显示"6",而不是"06"

答案:5  悬赏:70  手机版
解决时间 2021-12-22 01:11
private class ButtonAction implements ActionListener{
public void actionPerformed(ActionEvent e){
String Num = e.getActionCommand();

if(Num == "C"){
textField.setText("0");
}

else if(Num == "0"){

if(textField.getText() == "0"){
textField.setText(Num);
}
else{
Num = textField.getText() + Num;
textField.setText(Num);
}
}

else if(Num == "1"){
if(textField.getText() == "0"){

textField.setText(Num);
}
else {
Num = textField.getText() + Num;
textField.setText(Num);
}
}
}
一小段代码。。
比如先输入个0,然后再输入1,显示的是01,不知哪里出错了。。
最佳答案
Num = textField.getText() + Num;
这里如果 textField.getText() 获取到的是 0
Num 为输入的 1
textField.getText() + Num 这里不会进行运行 0+1=1
而是 "0"+"1"="01" 字符串拼接
全部回答
不会
代码全部贴出来
这段代码挺糟糕的,逻辑太复杂(太多的if else, 这样程序的分支太多,容易出错),而且基本就是面向过程去做。具体问题就是java里面,字符串的内容比较不能用==来判断, == 只能判断这两个字符串是不是指向同一个对象。想判断字符串内容是不是相等,最好用equals方法。
你好! java代码在编写时有很多免费的IDE工具,比如java编写最常用的Eclipse等,在Eclipse里面,学会有debug工具去逐行跟踪自己的代码,发现问题、优化逻辑。 如果对你有帮助,望采纳。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
檀香木手串可以油刷吗用橄榄油可以吗
七年级14课课文《秋天》的散文
关于计算机方面的,这是什么运算,详细方法
阴阳师黑白童子御魂搭配 黑白童子带什么御魂
(+4)=(+7)
【英语】用英语解释句子(同义句转换)*1
单选题宁波发展该经济的优势与它的地理位置有
基础钢筋含量怎么计算?(有图)
单选题下列有关文学常识的表述,不正确的一项
女性买车,比较适合的都有什么车型啊?
西安到商洛多少公里
瀍河回族区洛阳民族宾馆(中州东路)这个地址怎
电脑内存条什么牌子好
小明在栈桥旁驾驶着帆船游玩,以下说法中错误
欧莱雅口红哪款颜色好
推荐资讯
为什么白天唱歌没晚上好听?
复兴门外社区消防工作站地址在什么地方?想过
如何改变光盘类型
Morocco is located at the northwest of Afr
全南县环境保护局地址有知道的么?有点事想过
用于电脑黑客,网络操作等 什么笔记本比较好
空间留言,我们是普通同学,她是女的,留啥比
什么的么字加一笔是什么字?
绕地球赤道一周的长度是多少千米,大约是多少
单选题After a whole day’s
飞舞凤凰来猜三个数字
比值的含义
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?