java - 当我与 null 进行 == 比较时出现 NullPointerException

标签 java nullpointerexception

我在执行当前程序时遇到困难。当我尝试检查节点(一个对象)是否为空时,我得到一个 NullPointerException ,我认为你可以这样做。我在此 if 语句中遇到异常

        else if(direction == 0) {
            cursor = cursor.getParent();
            if(cursor.getRight() != null)
                direction = 1;
            else
                direction = 0;
        }

我在第三行'if(cursor.getRight() != null)'上得到了异常,我尝试了多种方法来编写它,但仍然得到相同的异常。 ('if(null !=cursor.getRight)' 和 'if(!(null ==cursor.getRight())' getRight() 方法返回下一个节点(对象)的实例,并在该对象初始化时初始化为 null。

最佳答案

else if(direction == 0) {
            cursor = cursor.getParent();
            if(cursor.getRight() != null)
                direction = 1;
            else
                direction = 0;
        }

您收到 NullPointerException 的原因是因为 cursor 设置为 null,因此当您尝试 cursor.getRight() 时,它的计算结果为 null.getRight() 因此出现异常。

我建议您尝试以下代码:

else if(direction == 0) {
            cursor = cursor.getParent();
            if(cursor!=null && cursor.getRight() != null)
                direction = 1;
            else
                direction = 0;
        }

关于java - 当我与 null 进行 == 比较时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26824827/

相关文章:

java - 如何使用过程将值插入数据库

java - 从 JSF 项目根文件夹中读取 html 文件

java - Spring MVC 中方法级别的 @ModelAttribute 声明

java - 使用 Java 逻辑三元运算符比较三个数字?

java - 有限制的集合,如果达到限制,可以在添加新项目之前删除旧项目

java - 如何将 @Nonnull 注释应用于所有内容,包括类型使用和类型参数?

java - 调用 headlessfragment 时 Android Studio : Error of java. lang.NullPointerException

Java NullPointerException 在构造函数的类中

java - 什么是NullPointerException,我该如何解决?

android - 捕获图像后尝试设置图像时获取 "Caused by: java.lang.NullPointerException: uri"