假设我们有一个linkedList
LinkedList<Integer> list = new LinkedList<Integer>();
list.add(3);
list.add(5);
list.add(6);
我们如何访问链表的头部? 函数getFirst()不是我在这里需要的,因为它只返回第一个元素3而不是第一个节点。如何获取列表的第一个节点? 我的示例中的第一个节点是值为3的节点,指向5。
答案 0 :(得分:2)
如果要使用数据返回实际的Node,可以使用嵌套的Node类实现自己的LinkedList类,并将其返回到那里。您无权访问&#34; Node&#34; java.util类在其实现中使用。
编辑:如果您想在代码中看到我在说什么,请考虑以下代码。虽然它没有以任何方式完成,但我输入它来证明你不能简单地创建自己的Node类并将java.util.LinkedList节点分配给它,因为你无法访问他们使用的Node。在他们的实施。相反,做以下事情:
public class MyList {
private Node head;
public Node getHeadNode() {
return this.head;
}
public class Node {
private int data;
private Node next;
//constructor
public Node(int data) { this.data = data; this.next = null; }
}
}