Java String.equals()始终返回true
K想要比较两个字符串,但是Java String.equals()始终返回true,java,android,string,Java,Android,String,K想要比较两个字符串,但是equals()方法总是返回true,因此if语句总是运行。为什么会发生这种情况 resultString = "Test1"; String CompleteString = "Test"; if(CompleteString.equals(resultString)); { rowView.setBackgroundResource(R.color.listselect_red); } if(CompleteString.equals(resultStrin
equals()
方法总是返回true,因此if语句总是运行。为什么会发生这种情况
resultString = "Test1";
String CompleteString = "Test";
if(CompleteString.equals(resultString));
{
rowView.setBackgroundResource(R.color.listselect_red);
}
if(CompleteString.equals(resultString))代码>删除在if语句之后编码>
if(CompleteString.equals(resultString))
{
rowView.setBackgroundResource(R.color.listselect_red);
}
删除
fromif(CompleteString.equals(resultString))代码>
表示语句结束,因此即使if()
循环也会返回false
或true
在if()
之后出现的所有语句。因此rowView.setBackgroundResource(R.color.listselect\u red)代码>将一直执行
这样试试看
resultString = "Test1";
String CompleteString = "Test";
if(CompleteString.equals(resultString))// removed `;`
{
rowView.setBackgroundResource(R.color.listselect_red);
}
这是因为“;”在if的末尾。只要移除,它就会工作
if(CompleteString.equals(resultString));
它不会进入if块,它看起来像一个空条件:)这是因为if条件中有分号
正确代码
resultString = "Test1";
String CompleteString = "Test";
if(CompleteString.equals(resultString))
{
rowView.setBackgroundResource(R.color.listselect_red);
}
谢谢,我没看见!有时犯这样一个愚蠢的错误让我犯错误是因为我没有看到分号,有时会发生,但我不明白下一票?本网站针对此类问题制作,其中有些问题很难解决,有些问题很容易解决!
resultString = "Test1";
String CompleteString = "Test";
if(CompleteString.equals(resultString))
{
rowView.setBackgroundResource(R.color.listselect_red);
}