if语句上的Java空指针异常

时间:2017-10-24 01:55:16

标签: java nullpointerexception

我有以下if语句:

if (node.left.left == null && node.left.right != null)

与二叉树相关。在此if语句之前,我有另一个if语句来检查node.left是否为空。

为什么我在这个语句中得到空指针异常?

方法中的完整代码,直到例外:

 BinaryTreeNode node= root;


if (root==null)
    return true;
else
    {
        while(node!=null)
        {
        if (node.key>key && node.left !=null)
        {
            if (node.left.key==key)
                {
                    if(node.left.left==null && node.left.right==null)
                        node.left=null;
                    if(node.left.left==null && node.left.right!=null)
                        node.left=node.left.right;

1 个答案:

答案 0 :(得分:4)

                    node.left=null;
                if(node.left.left==null && node.left.right!=null)
                    node.left=node.left.right

显式将node.left设置为null。