翻譯自:http://docs.oracle.com/javase/tutorial/collections/intro/index.html
一個集合,即collection,有時也被稱為一個容器,只是將多個元素聚整合一個單元。Collections常被用來儲存、檢索、操縱聚集資料以及聚集資料間的通訊。一般來說,Collections表示一組形成自然集合的資料項目,比如一手撲克牌、一個信箱(由很多信組成)或者電話簿。 如果你熟悉Java語言或者任何一門其他程式設計語言,你可能已經對Collections比較熟悉了。Java 1.2之前的集合實現,包括Vector、Hashtable和array,但是這些早期實現版本不包括集合架構。
那麼什麼是集合架構呢? 一個集合架構是表示和操縱集合的同一架構。所有集合架構都包含下面幾項:
介面:即表示集合的抽象資料類型,ADT。介面使得在使用集合時不需要關注集合的實現細節。在物件導向語言中,介面一般會形成階層。
實現:集合介面的具體實現。實際上它們是可複用的資料結構
演算法:在實現集合介面的對象上進行的各種有意義的計算,如搜尋、排序。實際上,演算法是可複用的功能單元。
除了Java集合架構以外,其他有名的集合架構有C++ STL和Smalltalk語言的集合層次架構。曆史上,集合架構因為他們相當複雜而具有相當陡峭的學習曲線,並因此而惡名昭著。
使用Java集合架構的好處 Java集合架構提供了下面的好處:
減輕編程負擔:集合架構通過提供有用的資料結構和演算法,使得我們從底層演算法中解脫出來而能更專註於代碼邏輯
提高編程效率和編程品質:Java集合架構提供了各種有用的資料結構演算法的高效能、高品質實現。因為程式員從自己實現各種資料結構的艱苦工作中解放出來,因此有更多時間用來改善程式品質和程式效能
允許互通性
減少了學習和使用新API的負擔
減少了設計新API的負擔
促進軟體複用:符合標準集合介面的新資料結構天生可複用。操作於實現集合介面的對象上的新演算法亦然。