.equals(null)可能不是预期的

时间:2014-11-02 16:36:35

标签: android null calculator

我正在尝试制作计算器应用程序,但我遇到了问题: (null)用橙色着色,它说:.equals(null)可能不是我想要的。我该怎么办?

case R.id.equal: if(!optr.equals(null)){
                    if(op2 != 0){
                        if(optr.equals("+")){
                            disp.setText(""); /*op1 = op1 + op2;*/
                         disp.setText("Result : " + Integer.toString(op1));

2 个答案:

答案 0 :(得分:2)

这就是你如何做到的。 Null不是一个对象 - 所以没有等于:

case R.id.equal: if(optr!=null){
                    if(op2 != 0){
                        if(optr.equals("+")){
                            disp.setText(""); /*op1 = op1 + op2;*/
                         disp.setText("Result : " + Integer.toString(op1));

答案 1 :(得分:2)

我假设您要检查optrnull还是空字符串。在这种情况下,请使用TextUtils.isEmpty()

case R.id.equal: if(!TextUtils.isEmpty(optr)){
                    if(op2 != 0){
                        if(optr.equals("+")){
                            disp.setText(""); /*op1 = op1 + op2;*/
                         disp.setText("Result : " + Integer.toString(op1));