K 想要比较两个字符串,但是 equals()
方法总是返回 true ,所以 if 语句总是运行。为什么会这样?
resultString = "Test1";
String CompleteString = "Test";
if(CompleteString.equals(resultString));
{
rowView.setBackgroundResource(R.color.listselect_red);
}
最佳答案
if(CompleteString.equals(resultString));
<-- 移除 ;
您的代码等同于:
if(CompleteString.equals(resultString))
{
//empty block
}
{
rowView.setBackgroundResource(R.color.listselect_red);
}
因此,如果 equals 返回 true,将执行空 block ,并且在第二个 block 之后将始终执行,无论 if 是 false
还是 true
.
关于java - String.equals() 总是返回真,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20582392/