2013-11-05 12 views
0

根據我的研究,Java的LinkedList不提供一些常用的方法,如什麼是Java最通用的第三方鏈表?

  • CONCAT
  • 合併
  • nextNode
  • prevNode
  • 等。

等等我讀過的大部分答案都說我必須編寫自己的自定義鏈表來迎合我的n電火工品。當然,我可以寫一個自定義鏈表。但我不想重新發明輪子。而在將來,我可能需要用不同但常用的方法編寫另一個自定義鏈表。

那麼有沒有第三方的開源鏈表列表項目可以補充java的鏈接列表,如上面提到的那些方法?或者LinkedList已經完成,我需要做的就是調整它的方法以適應我的需求?

+4

'concat'和'merge'與'addAll(Collection )'有什麼區別?另外,爲什麼你確實需要'nextNode'和'prevNode',我的意思是,不使用迭代器訪問列表內部的好處是什麼? –

+0

@ Luiggi門多薩好,那些方法只是例子。我在尋找的是一個更通用,更完整的鏈接列表,它的方法比java的原始鏈表更多。還是你說java的鏈表已經完成? – Keale

+0

這取決於你的真實需求來決定是否實現*完成*,所以它會更好,如果你發佈你需要/想獲得更準確的幫助。順便說一下,我直接使用'LinkedList'來使用'List'接口。 –

回答

1
+0

我認爲這是我正在尋找的。所以基本上不需要創建自定義鏈表?我可能需要的所有功能都已經寫好了? – Keale

+0

這就是你在大多數情況下可能會發現的。我自己寫這些東西的唯一時間是無論什麼原因我無法訪問特定的庫。例如,我無法從GWT訪問Apache Commons。 – pscuderi

0

你當然可以得到一個ListIterator實例,它使用listIterator()方法給你next()和previous()。

自從Java 6以來,我通常使用內置的for循環,因爲它看起來更清晰和更容易,但是當我需要更詳細的東西時,我偶爾會退出迭代器。我不知道任何第三方庫。我還沒有意識到任何尚未存在的常見數據結構功能,儘管它們往往有自己的命名法。

相關問題