GET:字符串比较不起作用

时间:2011-05-11 10:02:23

标签: java gwt

我在GWT MVP应用程序中的演示者中有以下代码:

public void onFailure(ServerFailure error) {

    String errCode = error.getMessage();

    Window.alert(errCode);
    Window.alert("Server Error: pleaseEnterQuestion");

    if(errCode == "Server Error: pleaseEnterQuestion")
        Window.alert("same");
    else
        Window.alert("different");
}

前两个警报看起来完全一样。第三个提醒是different。但我希望它是same

3 个答案:

答案 0 :(得分:7)

使用equals而不是==来比较字符串:

if("Server Error: pleaseEnterQuestion".equals(errCode))

有关详细信息,请参阅此SO问题:How do I compare strings in Java?

答案 1 :(得分:2)

当您想要比较字符串时,请始终使用 equals()。此外,你必须在比较之前修剪(左,右或修剪:))你的字符串,因为它包含空格。

答案 2 :(得分:1)

使用 .equals()

在equals中,字符串的内容不是字符串对象的引用ID。

== 中,比较对象引用ID。

equals()方法在java中的String和Wrapper类中被覆盖,其他地方equals和==具有相同的功能。