【问题标题】:java.lang.NullPointerException: 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference [duplicate]java.lang.NullPointerException:空对象引用上的'boolean java.lang.String.equals(java.lang.Object)'
【发布时间】:2021-05-04 07:29:26
【问题描述】:
if (chat_message.getReceiver().equals("myid") 
    && chat_message.getSender().equals("userid") 
    || chat_message.getReceiver().equals("userid") 
    && chat_message.getSender().equals("myid")
) 

我收到此错误?

我做对了,firebase 也是对的。

当我进入应用程序时,它会立即关闭。有谁知道原因吗?

我得到的错误:

java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“boolean java.lang.String.equals(java.lang.Object)”

【问题讨论】:

标签: java android android-studio


【解决方案1】:

如果sender/receiver的ID是常量字符串"myid"/"userid"最好使用Joda(反转)条件来防止NullPointerException:

final String sender = chat_message.getSender();
final String receiver = chat_message.getReceiver();

if (("myid".equals(sender) && "userid".equals(receiver)) 
    || ("myid".equals(receiver) && "userid".equals(sender)) 
) 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-19
    相关资源
    最近更新 更多