gpt4 book ai didi

java - LinkedList temp.next 和 temp?

转载 作者:行者123 更新时间:2023-11-29 06:06:15 26 4
gpt4 key购买 nike

所以我在练习一些链表问题,但我一直把假设弄混了//这是一个只有头部的单向链表

// what is the difference between 

ListNode temp = head;
while( temp != null ) {
temp = temp.next ;
}

while( temp.next != null ) {
temp = temp.next ;
}

这两者有什么区别?如果您能向我解释一下,我们将不胜感激。

最佳答案

第一个示例在 temp == null 时终止,这意味着 temp 在循环后将具有 null 值并且对您没有多大用处,但用于处理列表中的项目这是一种完全有效的方法。

第二个例子会在 temp.next == null 时停止,但 temp 本身实际上有一个值,在这种情况下它将是对列表尾部的引用,这更有用如果您还想在列表中添加其他内容。

正如其他一些人指出的那样,如果 temp 为 null,第二个将导致 null 取消引用异常,但这只有在处理循环之前 temp 为 null 时才会成为问题,因此可以通过条件来避免这种情况。

关于java - LinkedList temp.next 和 temp?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8441959/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com