gpt4 book ai didi

java - 为什么我们可以使用 Node head = null 而无需在 Java 中实例化 'head' ?

转载 作者:行者123 更新时间:2023-11-30 02:45:06 24 4
gpt4 key购买 nike

我正在阅读某人的代码。它是关于获取输入数字并将这些数字转换为链接列表。部分代码如下:

class Node {
int value;
Node next;
Node() {
next = null;
}
}

首先我们需要创建一个 head 节点来指示 head,我们让 head 为 null,如下所示 Node head = null

我对java的有限经验告诉我,这里的head应该是一个Node类型对象。那么为什么我们可以使用Node head = null而不实例化head

我认为至少我应该创建Node head = new Node();那么我们可以使用 Node head = null;

谁能帮我解释一下吗?

最佳答案

Node head = null;

该行表明链接列表中没有项目。这在 Java 中是有效的,表明虽然 head 可以包含 Node 对象(或派生类的对象),但它当前为空。

要将项目添加到列表中,可能需要一些代码,例如:

public void addItemToLinkedList(int value) {
if (head == null) {
head = new Node();
head.value = value;
} else {
...
}
}

因此,如果没有第一个节点(当 head 等于 null 时),则创建 head。否则,如果 head 已经存在,则将执行 else block ,它将查找列表的末尾并添加另一个节点。

关于java - 为什么我们可以使用 Node head = null 而无需在 Java 中实例化 'head' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40411039/

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