尝试创建一个空的链接列表。为了创建空列表,我创建了一个内部类 Node 并将其设置为静态,以便主类可以访问它。
import java.util.LinkedList;
public class Addtwo {
static class Node {
int data;
Node next;
Node head;
Node(int d) {
data = d;
next = null;
// Constructor
}
public static void main (String args[])
{
/* Start with the empty list. */
LinkedList llist = new LinkedList();
llist.head = new Node(1);
Node second = new Node(2);
Node third = new Node(3);
llist.head.next = second;
second.next = third;
}
}
}
它找不到我在内部类 Node 中创建的节点头。如何解决这个问题?
错误:
Error :(22, 22) java: cannot find symbol
symbol : variable head
location: variable llist of type java.util.LinkedList
首先,如果你想使用 JDK 的LinkedList
,你不需要管理列表的节点,这项工作已经实现。您只需要这样做:
LinkedList<Integer> llist = new LinkedList<Integer>();
llist.add(1);
llist.add(2);
llist.add(3);
这里还有更多功能。
其次,如果你想实现自己的链表(我认为这是你想要的(,你不需要使用 JDK 的 LinkedList,你可以从这个基本代码开始:
public class Addtwo {
static class Node {
int data;
Node next;
Node(int d) {
data = d;
next = null;
}
public static void main(String args[]) {
/* Start with the empty list. */
Node head = new Node(1);
Node second = new Node(2);
Node third = new Node(3);
head.next = second;
second.next = third;
Node iterator = head;
while (iterator != null) {
System.out.println(iterator.data);
iterator = iterator.next;
}
}
}
}
PS:您不需要为每个节点存储一个磁头。您可能需要另一个类LinkedListManager
来实现一些方法并存储列表的头部和尾部。