0

我有这个节点类,我想知道程序如何识别下一个节点实际上是下一个节点?为什么我要把它分配给 null 呢?详细解释将不胜感激。

package LinearNode;
import dataobjects.*;


public class Node
{

public Node next;
public AnyClass obj;

public Node(AnyClass newObj)
{
    next = null; 
    obj = newObj;
}

public void show()
{
    System.out.println(obj.getData());
}

public void editNode()
{
    obj.editData();
}

public Node getNext()
{
    return next;
}
}
4

2 回答 2

1

Node 通常用在链表中,下一个节点为空的节点是列表的最后一个(因为它没有任何下一个节点)。

节点的下一个节点将是您初始化的节点,方法是

someNode.next = someOtherNode;

请注意,默认情况下字段应该是私有的,并且几乎不应该是公共的。使用方法来修改对象的状态。

于 2013-01-26T17:16:30.960 回答
0

程序员有责任正确地组装和使用他选择的数据结构。该next节点指向链接列表中假定为“下一个”节点的引用,但 Java 无法告诉您是否正确链接了它们。null通常用于表示列表的结尾(与循环链表相反,在这种情况下,可以使用头指针和尾指针而不是 null)。可以在Wikipedia此处找到有关链表数据结构的文档,尽管示例是用 C 编写的。

于 2013-01-26T17:22:42.373 回答