-3

所以我是 Java 新手,并试图了解链表。我在 YouTube 上找到了一个教程,它描述了制作链接列表的步骤。这是我卡住的地方:

public class List {

    public String bookName;
    public int millionsSold;

    public List next;

    public static void main(String[] args)
    {

    }

}

public List next

- 这到底是什么,它是什么意思?它是某种容器吗?

4

5 回答 5

2

它只是一个引用变量来保存下一个元素的引用LinkedList,您可以LinkedList直接使用实现而不是编写一个

于 2013-06-04T00:06:58.990 回答
2

Linked List实现中Next通常指的是序列中的下一个节点(或链接)。

利用:

List head = new List();  
head.next = new List();
...   

void iterate()  
{   
     List node = head;
     while(node != null)
     {  
         System.out.println(node);  
         node=node.next;
     }  
}  
于 2013-06-04T00:07:44.900 回答
2

列表的每个元素(我们将其称为节点)由两项组成 - 数据和对下一个节点的引用。最后一个节点具有对 null 的引用。链表的入口点称为链表头。需要注意的是,head并不是一个单独的节点,而是对第一个节点的引用。如果列表为空,则头部为空引用。

在此处输入图像描述

链表 - Victor Adamchik - 卡内基梅隆大学

于 2013-06-04T00:12:27.367 回答
2

您要实现的是单链表。这意味着列表中的每个元素都指向列表中的下一个元素,或者指向列表的末尾:

单链表的插图取自维基百科文章

在您的情况下,next将是对下一个框的引用,因此基本上存储在图片中的大点中的值。列表本身就是对第一个元素的引用(即图片中包含 12 的框)。

于 2013-06-04T00:11:34.087 回答
-1

该语句声明了一个变量,该变量指向另一个具有相同“List”类型的对象。

顺便说一句,除非您想练习编码技能,否则您不需要自己创建链接列表。已经有一个内置类:http: //docs.oracle.com/javase/6/docs/api/java/util/List.html

于 2013-06-04T00:07:14.127 回答