2014-10-19 103 views
0

我一直在試圖研究一種使用LinkedList實現隊列的方法。我主要通過實例向我展示瞭如何通過字面上使用類中的「實現」來實現它。 但是然而,我想要做的是擴展LinkedList類。例如,我寫了這樣的事情:Java通過擴展LinkedList實現隊列

public class TestQueue extends LinkedList{ 

    public TestQueue(){ 

    } 

    public void enqueue(ObjectType c){ 

     add(c); 
    } 

    public Object dequeue(){ 
     return (ObjectType) remove(); 
    } 

    // more code for peek and size ect.... 


} 

這真的是我所要做的使用鏈表類型隊列嗎?那麼我怎麼會設置一個頭(前)和一個尾(後)來像使用隊列一樣使用鏈表?

在此先感謝。

+1

大概'Queue'是一個接口,你的類應該實現此接口,也從'LinkedList'類擴展。 – 2014-10-19 19:15:16

+1

[LinkedList](http://docs.oracle.com/javase/7/docs/api/java/util/LinkedList.html)已經是隊列了!實際上,它甚至是一個雙端隊列或Deque。是否有原因試圖在列表頂部創建自己的實現? – andersschuller 2014-10-19 19:17:10

+0

@andersschuller可能是OP實現他/她自己的LinkedList類。 – 2014-10-19 19:19:06

回答

0

從我的理解和查找LinkedList類,你應該很好去,因爲你應該需要的唯一的東西是隊列類,這個LinkedList已經包含了。我建議儘快查看這些資源,以確保您的理解是您希望的。從Oracle

API - http://docs.oracle.com/javase/7/docs/api/java/util/LinkedList.html

學習一下隊列& Staks(文檔) - http://introcs.cs.princeton.edu/java/43stack/

+0

哇......我的教授沒有說清楚。感謝您的幫助鏈接 – user3806226 2014-10-19 19:33:29

+0

樂意提供幫助,如果您有任何具體問題,請隨時提問,我會盡力回答您可能無法理解的任何問題。 – Sh4d0wsPlyr 2014-10-19 19:42:54

+0

那麼,我將如何設置頭(前)和尾(後)來使用這個鏈表作爲隊列?我是否必須創建自己的setNext()以及什麼? – user3806226 2014-10-19 19:50:53