将对象添加到循环列表的末尾
Adding an object to the end of the circular list
我这里有一个工作代码,它在末尾添加了一个新节点。但由于某种原因在添加第三个节点后,第一个节点消失了。
这是方法
public boolean add(Token obj) {
if(obj == null){
return false;
}
if (head == null){
head = new Node(null, null, obj);
return true;
}
while (head.next != null){
head = head.next;
}
head.next = new Node(null,null,obj); // Next, Previous , Object
return true;
}
创建一个新节点
当我像这样从 main 调用它时
public static void main(String[] args) {
CircularList test = new CircularList();
Token something = new Token("+");
test.add(something);
test.add(new Token(2));
test.add(new Token(5));
System.out.println(test.toString());
}
}
我的输出是
"List contains 2 , 5 "
因此,如果我删除第三个添加的新令牌,即令牌 (5),第一个会重新出现。
有什么帮助吗?提前致谢
while (head.next != null){
head = head.next;
}
是wrong.U改变头指针..
Node temp=head;
while(temp.next!=null)
temp=temp.next
temp.next=new Node(null,null,obj);
我这里有一个工作代码,它在末尾添加了一个新节点。但由于某种原因在添加第三个节点后,第一个节点消失了。
这是方法
public boolean add(Token obj) {
if(obj == null){
return false;
}
if (head == null){
head = new Node(null, null, obj);
return true;
}
while (head.next != null){
head = head.next;
}
head.next = new Node(null,null,obj); // Next, Previous , Object
return true;
}
创建一个新节点
当我像这样从 main 调用它时
public static void main(String[] args) {
CircularList test = new CircularList();
Token something = new Token("+");
test.add(something);
test.add(new Token(2));
test.add(new Token(5));
System.out.println(test.toString());
}
}
我的输出是
"List contains 2 , 5 "
因此,如果我删除第三个添加的新令牌,即令牌 (5),第一个会重新出现。
有什么帮助吗?提前致谢
while (head.next != null){
head = head.next;
}
是wrong.U改变头指针..
Node temp=head;
while(temp.next!=null)
temp=temp.next
temp.next=new Node(null,null,obj);