比较两件事情是行不通的

时间:2011-09-09 10:47:54

标签: android string compare

我的Android应用程序中有一个奇怪的问题。我必须比较两个等于的字符串。我试过这个:

if (raspunsdata.equals(rok)) {
                System.out.println("changed ");

            } else
                System.out.println("no change");
        }

但我总是“没有变化”。在此之前,我为两个字符串都有System.out.println,并且它们都具有相同的值。

我还尝试了(raspunsdata==rok)raspunsdata.contentEquals(rok),但我遇到了同样的问题。为什么?我无法理解这一点,...请帮助......

2 个答案:

答案 0 :(得分:4)

您可能有不需要的空格。可能需要使用修剪功能才能确保。

if (raspunsdata.trim.equals(rok.trim())) { 
    System.out.println("changed "); 
} else 
    System.out.println("no change"); 
} 

Btw equals是检查值是否相同的正确方法。

答案 1 :(得分:0)

.equals - 比较两个对象的值。如果你有2个具有相同字符集的字符串.equals将返回true;  == - 比较两个对象引用是否相等。 例如:

String a = "lol";
String b = a;

a == b - 将是真的。

尝试阅读:http://www.devdaily.com/java/edu/qanda/pjqa00001.shtml