posts - 22, comments - 17, trackbacks - 0, articles - 15
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          Collection接口的總結

          Posted on 2007-04-18 11:18 碼農(nóng)cz 閱讀(336) 評論(0)  編輯  收藏 所屬分類: As u
          Map接口:
              |
              + -- WeakHashMap: 以弱鍵 實現(xiàn)的基于哈希表的 Map。在 WeakHashMap 中,當某個鍵不再正常使用時,將自動移除其條
              |      目。更精確地說,對于一個給定的鍵,其映射的存在并不阻止垃圾回收器對該鍵的丟棄,這就使該鍵成為可終止的,被終
              |      止,然后被回收。丟棄某個鍵時,其條目從映射中有效地移除,因此,該類的行為與其他的 Map 實現(xiàn)有所不同。此實現(xiàn)
              |      不是同步的。
              |
              + -- TreeMap:該映射根據(jù)其鍵的自然順序進行排序,或者根據(jù)創(chuàng)建映射時提供的 Comparator 進行排序,具體取決于使用的
              |    構造方法。此實現(xiàn)不是同步的。
              |
              + -- HashMap:基于哈希表的 Map 接口的實現(xiàn)。此實現(xiàn)提供所有可選的映射操作,并允許使用 null 值和 null 鍵。(除了      
              |        非同步和允許使用 null 之外,HashMap 類與 Hashtable 大致相同。)此類不保證映射的順序,特別是它不保證該順   
              |       序恒久不變。此實現(xiàn)不是同步的。
              |
              +-- SortedMap: 進一步提供關于鍵的總體排序 的 Map。該映射是根據(jù)其鍵的自然順序進行排序的,或者根據(jù)通常在創(chuàng)建有
                   序映射時提供的 Comparator 進行排序。對有序映射的 collection 視圖(由 entrySet、keySet 和 values 方法返回
                   )進行迭代時,此順序就會反映出來。要采用此排序方式,還需要提供一些其他操作(此接口是 SortedSet 的對應映
                   射)。

          Collection接口:
              |
              + -- Set接口:一個不包含重復元素的 collection。更正式地說,set 不包含滿足 e1.equals(e2) 的元素對 e1 和 e2,并
              |      |     且最多包含一個 null 元素。正如其名稱所暗示的,此接口模仿了數(shù)學上的 set 抽象。
              |      |
              |      + -- HashSet:此類實現(xiàn) Set 接口,由哈希表(實際上是一個 HashMap 實例)支持。它不保證 set 的迭代順序;
              |      |    特別是它不保證該順序恒久不變。此類允許使用 null 元素。此類為基本操作提供了穩(wěn)定性能,此實現(xiàn)不是同
              |      |    步的。
              |      |
              |      + -- LinkedHashSet:具有可預知迭代順序的 Set 接口的哈希表和鏈接列表實現(xiàn)。此實現(xiàn)與 HashSet 的不同之外在
              |      |    于,后者維護著一個運行于所有條目的雙重鏈接列表。此鏈接列表定義了迭代順序,即按照將元素插入到 set
              |      |    中 的順序(插入順序)進行迭代。注意,插入順序不 受在 set 中重新插入的 元素的影響。此實現(xiàn)不是同步
              |      |    的。
              |      |
              |      + -- TreeSet:基于 TreeMap 的 NavigableSet 實現(xiàn)。使用元素的自然順序對元素進行排序,或者根據(jù)創(chuàng)建 set 時
              |           提供的 Comparator 進行排序,具體取決于使用的構造方法。此實現(xiàn)為基本操作(add、remove 和 contains)
              |           提供受保證的 log(n) 時間開銷。此實現(xiàn)不是同步的。
              |
              + -- List接口:有序的 collection(也稱為序列)。此接口的用戶可以對列表中每個元素的插入位置進行精確地控制。用戶
                     |      可以根據(jù)元素的整數(shù)索引(在列表中的位置)訪問元素,并搜索列表中的元素。
                     |
                     + -- ArrayList:List 接口的大小可變數(shù)組的實現(xiàn)。實現(xiàn)了所有可選列表操作,并允許包括 null 在內(nèi)的所有元素。
                     |    除了實現(xiàn) List 接口外,此類還提供一些方法來操作內(nèi)部用來存儲列表的數(shù)組的大小。(此類大致上等同于
                     |    Vector 類,除了此類是不同步的。)每個 ArrayList 實例都有一個容量。該容量是指用來存儲列表元素的數(shù)
                     |    組的大小。它總是至少等于列表的大小。隨著向 ArrayList 中不斷添加元素,其容量也自動增長。并未指定增
                     |    長策略的細節(jié),因為這不只是添加元素會帶來分攤固定時間開銷那樣簡單。此實現(xiàn)不是同步的。
                     |
                     + -- LinkedList:List 接口的鏈接列表實現(xiàn)。實現(xiàn)所有可選的列表操作,并且允許所有元素(包括 null)。除了實
                     |    現(xiàn) List 接口外,LinkedList 類還為在列表的開頭及結尾 get、remove 和 insert 元素提供了統(tǒng)一的命名方
                     |    法。這些操作允許將鏈接列表用作堆棧、隊列或雙端隊列。提供先進先出隊列操作(FIFO)。此實現(xiàn)不是同步的。
                     |
                     + -- Vector:Vector 類可以實現(xiàn)可增長的對象數(shù)組。與數(shù)組一樣,它包含可以使用整數(shù)索引進行訪問的組件。但是
                          ,Vector 的大小可以根據(jù)需要增大或縮小,以適應創(chuàng)建 Vector 后進行添加或移除項的操作。此實現(xiàn)是同步的
                          。
          主站蜘蛛池模板: 靖西县| 科技| 涿州市| 砀山县| 广德县| 达日县| 枣庄市| 化隆| 泰宁县| 精河县| 山丹县| 蛟河市| 五台县| 仙游县| 丰城市| 喀喇沁旗| 湖北省| 会同县| 靖安县| 永济市| 桑日县| 上饶县| 武义县| 陵川县| 昭通市| 虹口区| 汤原县| 惠水县| 卢湾区| 梁平县| 桓仁| 屏山县| 三河市| 宣汉县| 乌鲁木齐市| 石首市| 永善县| 通道| 苗栗县| 巴马| 河北区|