我如何纠正我的 addFirst 方法以及如何使我的 removeFirst 方法工作,因为它不会删除?我应该如何实施?public class LinkedList{ public static void main(String[] args) { LinkedList l = new LinkedList(); l.addFirst("c"); //l.removeFirst("m"); l.addFirst("b"); System.out.println(l.first.data); System.out.println(l.first.data); } public Node first; static class Node { String data; Node next; } private void addFirst(String s){ Node newNode = new Node(); newNode.data=s; newNode.next=first; first= newNode; } private void removeFirst(String s){ //Node n1 = new Node(); first.next = null; }}我希望结果是:b c但仅b被打印。
2 回答
HUWWW
TA贡献1874条经验 获得超12个赞
您正在打印相同的值两次,请尝试以下操作:
System.out.println(l.first.next.data);
在链表类中,第一个(或头)节点将包含下一个节点,因此您必须调用第一个节点,然后调用下一个节点数据。
例子:
LinkedList l = new LinkedList();
l.addFirst("c");
l.addFirst("b");
l.addFirst("z");
System.out.println(l.first.data);
System.out.println(l.first.next.data);
System.out.println(l.first.next.next.data);
添加回答
举报
0/150
提交
取消