可能重复:
如何比较 Java 中的字符串?
true
我有一个布尔语句,由于不正确地使用!=
比较字符串,它应该评估为:
public int calculateWeight( String hostname, String parameter,
String parInstance ) throws InvalidWeightException
{
if ( parameter != "*" && hostname != "*" && parInstance != "*" )
{
return 1;
}
...
}
在调试调用此方法的 JUnit 测试时,if 语句正在评估为 true(通过 Eclipse Inspect),但该return
语句没有执行。传递给parInstance
变量的值实际上是"*"
. 如果我们使用!(.equals())
,Eclipse Inspectfalse
会按预期显示。