我想創建一個鏈表實現這裏使用內部類嵌套類VS靜態內部類
package linkedlist;
public class linkedList {
public class Node
{
int data;
public Node next;
public Node(int k)
{
this.data = k;
this.next=null;
}
public Node addToHead(int data)
{
Node node = new Node(data);
Node current = this;
node.next=current;
return node;
}
}
public static void findn(Node head)
{
Node previous=head;
Node current = head;
int i =1;
while(current!=null)
{
if (i==6)
{
//System.out.println(current.data);
previous.next = current.next;
break;
}
previous=current;
current = current.next;
i++;
}
}
public static void main(String args[])
{
linkedList list = new linkedList();
linkedList.Node tail = linkedList.new Node(0);
// list.Node tail = list.Node(0);
Node head = tail;
for (int i=1;i<=20;i++)
{
head = head.addToHead(i);
}
findn(head);
while(head!=null)
{
System.out.println(head.data);
head = head.next;
}
}
}
我的問題在主函數中我試圖創建一個使用外部類的一個節點。但是,即使我遵循正確的語法,語法也會引發錯誤。我想知道這條語句有什麼問題 「linkedList.Node tail = linkedList.new Node(0);」
**錯誤說**是什麼? – SLaks
你爲什麼使用非靜態的內部類?爲什麼'Node'關心父實例? – SLaks
我知道靜態內部類是正確的方法。我正在嘗試使用內部類。我想知道爲什麼錯誤會拋出。靜態內部類的工作正常,但是當我使用內部類時,它給了我一個錯誤「鏈表不能解析爲變量」 – user3246489