Java方法返回空指针?

时间:2012-11-25 05:40:48

标签: java

所以我有一个方法在用户运行命令时被检查,我得到这个错误的错误,它返回一个NullPointer ......

继承我的方法,

   public boolean openReferal(String name) {
    for(String s : m.refferalSessions) {
        if(s.equalsIgnoreCase(name)) {
            return true;
        }
    }
    return false;
}

以下是我如何实施它......

   if(check.openReferal(sender.getName() + ":" + args[0])) {
            sender.sendMessage(openReferal);
            return true;
        }

3 个答案:

答案 0 :(得分:1)

NullPointerException表示您在某处解除引用null变量。堆栈跟踪将准确地告诉您导致问题的行,并且从中可以推断出哪个变量设置为null。

从您的代码中,只有少数嫌疑人:mm.referralSessionschecksender。检查它们是否都已正确初始化,并使用异常中的信息来帮助追踪问题。

答案 1 :(得分:0)

实际上,方法不会返回NullPointerExceptions;相反,他们抛出它们。但是,方法可以返回null

但是,布尔方法不能返回null,因为基元不能为null。这里的NullPointerException可能是sendercheck在您调用相应方法时为null的结果。

答案 2 :(得分:0)

s可能为空。

您可以进行调试以查看s

的值