java集合系列01:總體框架

轉載自:http://www.cnblogs.com/skywang12345/p/3308498.html

Java集合是java提供的工具包,包含了常用的數據結構:集合、鏈表、隊列、棧、數組、映射等。Java集合工具包位置是java.util.*

Java集合主要可以劃分爲4個部分:List列表、Set集合、Map映射、工具類(Iterator迭代器、Enumeration枚舉類、Arrays和Collections)、。
Java集合工具包框架圖(如下):

大致說明:

看上面的框架圖,先抓住它的主幹,即Collection和Map。

1 Collection是一個接口,是高度抽象出來的集合,它包含了集合的基本操作和屬性。

  Collection包含了List和Set兩大分支。
  (01) List是一個有序的隊列,每一個元素都有它的索引。第一個元素的索引值是0。
          List的實現類有LinkedList, ArrayList, Vector, Stack。

  (02) Set是一個不允許有重複元素的集合。
          Set的實現類有HastSet和TreeSet。HashSet依賴於HashMap,它實際上是通過HashMap實現的;TreeSet依賴於TreeMap,它實際上是通過TreeMap實現的。

2 Map是一個映射接口,即key-value鍵值對。Map中的每一個元素包含“一個key”和“key對應的value”。

   AbstractMap是個抽象類,它實現了Map接口中的大部分API。而HashMap,TreeMap,WeakHashMap都是繼承於AbstractMap。
   Hashtable雖然繼承於Dictionary,但它實現了Map接口。

接下來,再看Iterator。它是遍歷集合的工具,即我們通常通過Iterator迭代器來遍歷集合。我們說Collection依賴於Iterator,是因爲Collection的實現類都要實現iterator()函數,返回一個Iterator對象。
ListIterator是專門爲遍歷List而存在的。

再看Enumeration,它是JDK 1.0引入的抽象類。作用和Iterator一樣,也是遍歷集合;但是Enumeration的功能要比Iterator少。在上面的框圖中,Enumeration只能在Hashtable, Vector, Stack中使用。

最後,看Arrays和Collections。它們是操作數組、集合的兩個工具類。

有了上面的整體框架之後,我們接下來對每個類分別進行分析

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章