Java 如何在链表中选择合适的if语句?

Java 如何在链表中选择合适的if语句?,java,if-statement,linked-list,conditional-statements,Java,If Statement,Linked List,Conditional Statements,这些if语句之间的区别是什么 if(current.next!=null) if(当前!=null) 我假设您正在迭代列表,并且希望知道何时处于链接列表的末尾。 如果您有以下情况: if (current.next!=null){ current = next } 那就没关系了。他们都很好。考虑到当前永远不会为空考虑以下链接列表: HEAD ---> ["value2" | -]--> ["value3" | -]--> ["last_value" | null]

这些if语句之间的区别是什么

  • if(current.next!=null)

  • if(当前!=null)


  • 我假设您正在迭代列表,并且希望知道何时处于链接列表的末尾。 如果您有以下情况:

    if (current.next!=null){
        current = next
    }
    

    那就没关系了。他们都很好。考虑到
    当前
    永远不会为

    考虑以下链接列表:

    HEAD ---> ["value2" | -]--> ["value3" | -]--> ["last_value" | null]
    
    假设
    current
    指向“value3”:

    然后
    current.next!=null
    true
    ,因为
    当前。next
    实际上是“next”节点

    现在让我们假设
    current
    移动到“last_value”,现在我们将有:

    HEAD ---> ["value2" | -]--> ["value3" | -]--> ["last_value" | null]
                                                        ↑
    
    现在
    current!=空
    为当前。下一个
    (表示没有更多节点)


    所以,“选择适当的”if语句不是一个好问题,因为它实际上取决于您要检查的内容,它们是两种不同的验证。

    第一个语句检查是否有下一个元素,第二个语句检查当前元素是否为null!
    HEAD ---> ["value2" | -]--> ["value3" | -]--> ["last_value" | null]
                                                        ↑