当前位置: 代码迷 >> Eclipse >> 计算器符号输入验证有关问题
  详细解决方案

计算器符号输入验证有关问题

热度:72   发布时间:2016-04-23 13:57:22.0
计算器符号输入验证问题
if(e.getSource()==btn[3]) // text.setText(text.getText()+"÷");
{
String cc=((JButton)e.getSource()).getText();
String str=text.getText().toString();
String str1=str.substring(str.length()-1,str.length());//得到最后字符

if((str1=="+")||(str1=="-")||(str1=="×")||(str1=="÷")||(str1==".")||(str1=="="))
{
String str3=str.substring(0, str.length()-1);
System.out.println(str3);
text.setText(str3+cc);
} }上面红色的代码不会执行是怎么回事,我已经测试过了其它的字符串,字符都是正确的,上述是计算器的一步分

------解决方案--------------------
字符串判断不应该是“==”吧,应该是用equals来判断吧,“==”判断的是地址,equals才是判断字符串
------解决方案--------------------
if(("+".equals(str1))||("-".equals(str1))||("×".equals(str1))||("÷".equals(str1))||(".".equals(str1))||("=".equals(str1)))
 {
 String str3=str.substring(0, str.length()-1);
 System.out.println(str3);
 text.setText(str3+cc);
 } }
  相关解决方案