2015-10-04 104 views
0

我对Java很新,我需要创建一个链表。我被告知我需要创建一个名为“Node”的类来存储每个元素。我写的类:链接列表内部类

public class Node() 
{ 
    public T data; 
    public Node next; 

    public Node(T data, Node next) 
    { 
     this.data = data; 
     this.next = next; 
    } 

    public Node getNext() 
    { 
     return next; 
    } 
    public T getData() 
    { 
     return data; 
    } 
} 

不过,我不能让一个单独的类,它是LinkedList类中。我明白如何使一个像导入迭代器的内部类,但“节点”不导入。我将如何做到这一点?

+0

使LinkedList类公开,但将Node类放入其中(不公开)。 – ergonaut

+0

这就是我所做的,但它给了我错误“令牌上的语法错误”class,“expected” –

+0

但是,这正是你需要放在上面的代码,否则你要求我们做你的功课 – ergonaut

回答

0
public class Linked{ 
    class Node{ 
     int value; 
     Node next; 
     Node(int data,Node next){ 
      value=data; 
      this.next=next; 
     } 
     Node getNext(){ 
     return next;} 
     } 

//Rest of the linked list methods 
} 

这被称为内部类,它不过是嵌套在另一个类中的类。当我们知道一个类在主类之外不存在时,我们将该类嵌套在主类中,即我们知道该节点类不能在程序中的任何地方使用,因此我们将此类作为内部类。