我开始研究链表,看到一段代码片段如下所示:

public class LinkedList {
    Node head;
    class Node {
        int data;
        Node next;

        Node(int d) {data = d;}
    }
    
    private void append(int newData) { 
        Node newNode = new Node(newData);

        if (head == null) {
            head = newNode;
            return;
        }

        Node last = head;
        while (last.next != null) {
            last = last.next;
        }

        newNode.next = null;
        last.next = newNode;
    }
}

我的问题是,newNode.next = null;行是否真的有必要,或者它是否只是一种良好的做法,因为在分配 node 并放置数据后的Node newNode = new Node(newData);行中, newNode.next将是null.

推荐答案

设置newnode.next = null不是必需的,您可以正确地看到,实例化后它应该已经为null.

Java相关问答推荐

为什么接口中的主函数而不是类中的主函数在Java 17中编译和运行没有问题?

JPackaged应用程序启动MSI调试,然后启动System. exit()

使用动态ID从json获取详细信息的Jolt规范

Java记录的不同序列化/反序列化

嵌入式ActiveMQ Artemis Web控制台加载错误

如何确定springboot在将json字段转换为Dto时如何处理它?

无法使用ApacheSpark依赖项构建JavaFX应用程序

如何将其他属性引用到log4j2 yaml配置中?

声明MessageChannel Bean的首选方式

Log4j与jdk21兼容吗?

无法使用Freemarker从XML中读取重复的标记值

FETCH类型设置为LAZY,但它仍会发送第二个请求

深度优先搜索实现:算法只向右搜索

在一行中检索字符分隔字符串的第n个值

使用MediaPlayer类在一段时间后停止播放音乐

如何在Spring Boot Auth服务器上正确配置CORS?

由于可为null,无法在kotlin中实现java接口

当我try 返回可选时,Mock无法正常工作

java.util.LinkedList()是如何成为MutableList的实例的?

Hibernate 命名策略导致 Java Spring Boot 应用程序中出现未知列错误