2014-11-01 52 views
0

的Java節點/ LinkedList的(基於指針) 程序基本上是包括學生的屬性節點:Java的節點LinkedList的

名字 姓氏 年齡 ID 主要

有3類: 1-節點類 2-類的方法(在開始時添加,並在最後添加,搜索等)。 3-測試類

th我面臨的問題是我對如何將所有學生屬性包含到一個節點感到困惑。

現在(1)增加一個整數節點類的一個例子是:

public class IntNodeF14 
{ 
    int item; 
    IntNodeF14 next; 
} 

我怎麼可以創建將接受所有學生的屬性

回答

0

節點讓你的類通用:

public class NodeF14<T> 
{ 
    NodeF14<T> next; 
    T data; 
} 

data將容納單個節點的數據。

然後,您可以爲您需要的任何類型的數據創建一個NodeF14

例如:

Student student = new Student (firstName,lastName); 
NodeF14<Student> studentNode = new NodeF14<Student> (student); 

如果您不能使用泛型,你必須包括所有屬性(或學生構件保持所有屬性)在Node類,但在這種情況下,您的列表將只支持一種類型的數據。

+0

Student student = new Student(firstName,lastName);是在測試類中,但是我將在該類中放置什麼,以便我將應用這些函數(添加到最後並添加到開頭等)。 – AJ1 2014-11-01 12:11:49

+0

比方說在功能類開始功能的添加是這樣的: public void Addb(int x) { IntNodeF14 NewN= new IntNodeF14(); NewN.item=x; NewN.next=First; if(Empty()) { First=NewN; Last=First; } else First=NewN; count++; } (但這是一個整數) 的學生多屬性的情況下 ,我應該怎麼辦? 在此先感謝! – AJ1 2014-11-01 12:14:17

+0

'Add(int x)'將一個int添加到列表中,以便使它成爲一個整數的鏈表。您需要一個泛型類,讓它稱爲LinkedList ,其中包含T類型的元素。add方法將接受通用參數T.然後,如果您創建學生列表:LinkedList list = new LinkedList (),你可以添加一個學生list.add(學生)。 – Eran 2014-11-01 12:18:31