我无法打印它无限打印 4 作为值的链表。这段代码有什么问题?在下面的代码中,我试图在添加每个元素后实现一个单向链表,同时尝试无限打印它作为输出 4 知道为什么吗?
import java.util.*;
class Linkedit{
static class Node{
static Node next;
int data;
Node(int t){
data=t;
next=null;
}
}
Node head=null;
public void insert(int data){
Node k=new Node(data);
k.next=head;
head=k;
}
public void show(){
Node a=head;
while(a!=null){
System.out.println(a.data);
a=a.next;
}
}
public static void main(String args[]){
Linkedit g=new Linkedit();
g.insert(3);
g.insert(4);
g.insert(5);
g.show();
}
}
问题是:
static Node next;
next
成员不应是静态的,因为每个Node
应具有不同的next
值。
改变
static class Node {
static Node next;
int data;
Node(int t){
data=t;
next=null;
}
}
自
static class Node {
Node next;
int data;
Node(int t){
data=t;
next=null;
}
}
解决您的问题。