1

所以基本上,我正在尝试为以下函数创建一个简单的 java 计算器,但似乎我的函数没有按预期的方式执行(即 + 不加,- 不减)。将不胜感激一些帮助:)

    if (ope == "+") {
        //add
    } else if (ope == "-") {
        //subtract
    } else if (ope == "*") {
        //multiply
    } else if (ope == "/") {
        //divide
    }
}
4

2 回答 2

5

不正确String的比较,而不是:

if (ope == "+") {
} else if (ope == "-") {
} else if (ope == "*") {
} else if (ope == "/") {

你应该有:

if ("+".equals(ope)) {
} else if ("-".equals(ope)) {
} else if ("*".equals(ope)) {
} else if ("/".equals(ope)) {
于 2013-06-27T10:20:51.187 回答
0

在 Java SE 7 及更高版本中,您可以在 switch 语句的表达式中使用 String 对象。更多信息

if(ope != null)
{
 switch(ope)
 {
  case "+" : do1(); break;
  case "-" : do2(); break;
  case "*" : do3(); break;
  case "/" : do4(); break;
  default :  doDefault(); break;
 }
}

有关字符串比较的更多信息

于 2013-06-27T10:26:49.873 回答