-2

我有一个如下的简单代码,当我在“N/A”字符串后面有一个空格时它返回 false。

String a = "N/A ";
if((a.trim())=="N/A")
{
 System.out.println("true");
}
else{
 System.out.println("false");
}

如果我将空格删除为“N/A”,则返回 true。我在这里想念什么。我知道我犯了一个愚蠢的错误,无法弄清楚。

提前致谢。

4

4 回答 4

5

首先,不要使用==运算符比较字符串。使用if(a.trim().equals("N/A")),它应该有帮助。在此处阅读有关比较 Java 中的对象的示例。

于 2012-05-19T07:50:00.553 回答
2

试试下面...

String a = "N/A ";
if(a.trim().equals("N/A"))
{
 System.out.println("true");
}
else{
 System.out.println("false");
}

==比较对象并.equals()比较值。

看到这个

于 2012-05-19T07:50:16.607 回答
1

您是否尝试过使用equals比较而不是对象身份?

于 2012-05-19T07:48:18.377 回答
1

使用 equals() 代替 == 还可以修复 if 条件中的括号问题

于 2012-05-19T07:51:14.693 回答