java - 为什么 equals 可能不会返回 true

标签 java equals

我有这个字符串:"no_questions_by_user"在名为 result 的变量中。

比我做这个检查:

if ( result != null && result.equals( "no_user_id" ) )
{
        Log.d( "Post execute: " , "NOOOT  OKKKK - no user id" );    
}
else
if ( result != null && result.equals( "database_error" ) )
{
        Log.d( "Post execute: " , "NOOOT  OKKKK - database error" );    
}
else
if ( result != null && result.equals( "no_questions_by_user" ) )
{           
        Log.d( "Post execute: " , "NOOOT  OKKKK - no questions by user so far" );   
}
else
{
  Log.d( "MyQuestionsActivity" , "In JSON parsing area.." );                
}

并且它总是到最后一个else。但根据我的理解,它实际上应该进入检查 result.equals( "no_questions_by_user" ) 的 block 。

知道为什么该 block 没有被执行吗?

谢谢!!

最佳答案

代码看起来不错。您的变量 result 必须具有另一个值。

我的猜测是结果字符串的末尾或开头有一些空格。

关于java - 为什么 equals 可能不会返回 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10123319/

相关文章:

Java:通知提供者的实现与 hashCode 驱动的 Map

Android 字符串不相等

java - 在声明和方法中调用 new 关键字两次

java - Android - 错误膨胀类 fragment - XML 文件

java - 如何同时比较对象类型和值

PHP : IF Domain equals EXACTLY [x] then [actions] but not subdirectories/files

java - 由于私有(private)访问而出错

java - Hibernate 通过非 id 列关联两个实体

java.lang.Character.getNumericValue(char ch) 方法的 Javascript 等效项

java - 是否有 Java 标准 "both null or equal"静态方法?