小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

[體力活]Collection接口的總結(jié)-Rain Life -JavaEye技術(shù)社區(qū)

 shaobin0604@163.com 2007-04-15
關(guān)鍵字: 設(shè)計(jì)模式   Collection接口的總結(jié)    
發(fā)一個(gè)完全體力活的帖子,是對(duì)JDK的中Collection接口的總結(jié),說(shuō)明全部摘自JDK6.0。
Map接口:
    |
    + -- WeakHashMap: 以弱鍵 實(shí)現(xiàn)的基于哈希表的 Map。在 WeakHashMap 中,當(dāng)某個(gè)鍵不再正常使用時(shí),將自動(dòng)移除其條
    |      目。更精確地說(shuō),對(duì)于一個(gè)給定的鍵,其映射的存在并不阻止垃圾回收器對(duì)該鍵的丟棄,這就使該鍵成為可終止的,被終
    |      止,然后被回收。丟棄某個(gè)鍵時(shí),其條目從映射中有效地移除,因此,該類的行為與其他的 Map 實(shí)現(xiàn)有所不同。此實(shí)現(xiàn)
    |      不是同步的。
    |
    + -- TreeMap:該映射根據(jù)其鍵的自然順序進(jìn)行排序,或者根據(jù)創(chuàng)建映射時(shí)提供的 Comparator 進(jìn)行排序,具體取決于使用的
    |    構(gòu)造方法。此實(shí)現(xiàn)不是同步的。
    |
    + -- HashMap:基于哈希表的 Map 接口的實(shí)現(xiàn)。此實(shí)現(xiàn)提供所有可選的映射操作,并允許使用 null 值和 null 鍵。(除了      
    |        非同步和允許使用 null 之外,HashMap 類與 Hashtable 大致相同。)此類不保證映射的順序,特別是它不保證該順   
    |       序恒久不變。此實(shí)現(xiàn)不是同步的。
    |
    +-- SortedMap: 進(jìn)一步提供關(guān)于鍵的總體排序 的 Map。該映射是根據(jù)其鍵的自然順序進(jìn)行排序的,或者根據(jù)通常在創(chuàng)建有
         序映射時(shí)提供的 Comparator 進(jìn)行排序。對(duì)有序映射的 collection 視圖(由 entrySet、keySet 和 values 方法返回
         )進(jìn)行迭代時(shí),此順序就會(huì)反映出來(lái)。要采用此排序方式,還需要提供一些其他操作(此接口是 SortedSet 的對(duì)應(yīng)映
         射)。
Collection接口:
    |
    + -- Set接口:一個(gè)不包含重復(fù)元素的 collection。更正式地說(shuō),set 不包含滿足 e1.equals(e2) 的元素對(duì) e1 和 e2,并
    |      |     且最多包含一個(gè) null 元素。正如其名稱所暗示的,此接口模仿了數(shù)學(xué)上的 set 抽象。
    |      |
    |      + -- HashSet:此類實(shí)現(xiàn) Set 接口,由哈希表(實(shí)際上是一個(gè) HashMap 實(shí)例)支持。它不保證 set 的迭代順序;
    |      |    特別是它不保證該順序恒久不變。此類允許使用 null 元素。此類為基本操作提供了穩(wěn)定性能,此實(shí)現(xiàn)不是同
    |      |    步的。
    |      |
    |      + -- LinkedHashSet:具有可預(yù)知迭代順序的 Set 接口的哈希表和鏈接列表實(shí)現(xiàn)。此實(shí)現(xiàn)與 HashSet 的不同之外在
    |      |    于,后者維護(hù)著一個(gè)運(yùn)行于所有條目的雙重鏈接列表。此鏈接列表定義了迭代順序,即按照將元素插入到 set
    |      |    中 的順序(插入順序)進(jìn)行迭代。注意,插入順序不 受在 set 中重新插入的 元素的影響。此實(shí)現(xiàn)不是同步
    |      |    的。
    |      |
    |      + -- TreeSet:基于 TreeMap 的 NavigableSet 實(shí)現(xiàn)。使用元素的自然順序?qū)υ剡M(jìn)行排序,或者根據(jù)創(chuàng)建 set 時(shí)
    |           提供的 Comparator 進(jìn)行排序,具體取決于使用的構(gòu)造方法。此實(shí)現(xiàn)為基本操作(add、remove 和 contains)
    |           提供受保證的 log(n) 時(shí)間開(kāi)銷。此實(shí)現(xiàn)不是同步的。
    |
    + -- List接口:有序的 collection(也稱為序列)。此接口的用戶可以對(duì)列表中每個(gè)元素的插入位置進(jìn)行精確地控制。用戶
           |      可以根據(jù)元素的整數(shù)索引(在列表中的位置)訪問(wèn)元素,并搜索列表中的元素。
           |
           + -- ArrayList:List 接口的大小可變數(shù)組的實(shí)現(xiàn)。實(shí)現(xiàn)了所有可選列表操作,并允許包括 null 在內(nèi)的所有元素。
           |    除了實(shí)現(xiàn) List 接口外,此類還提供一些方法來(lái)操作內(nèi)部用來(lái)存儲(chǔ)列表的數(shù)組的大小。(此類大致上等同于
           |    Vector 類,除了此類是不同步的。)每個(gè) ArrayList 實(shí)例都有一個(gè)容量。該容量是指用來(lái)存儲(chǔ)列表元素的數(shù)
           |    組的大小。它總是至少等于列表的大小。隨著向 ArrayList 中不斷添加元素,其容量也自動(dòng)增長(zhǎng)。并未指定增
           |    長(zhǎng)策略的細(xì)節(jié),因?yàn)檫@不只是添加元素會(huì)帶來(lái)分?jǐn)偣潭〞r(shí)間開(kāi)銷那樣簡(jiǎn)單。此實(shí)現(xiàn)不是同步的。
           |
           + -- LinkedList:List 接口的鏈接列表實(shí)現(xiàn)。實(shí)現(xiàn)所有可選的列表操作,并且允許所有元素(包括 null)。除了實(shí)
           |    現(xiàn) List 接口外,LinkedList 類還為在列表的開(kāi)頭及結(jié)尾 get、remove 和 insert 元素提供了統(tǒng)一的命名方
           |    法。這些操作允許將鏈接列表用作堆棧、隊(duì)列或雙端隊(duì)列。提供先進(jìn)先出隊(duì)列操作(FIFO)。此實(shí)現(xiàn)不是同步的。
           |
           + -- Vector:Vector 類可以實(shí)現(xiàn)可增長(zhǎng)的對(duì)象數(shù)組。與數(shù)組一樣,它包含可以使用整數(shù)索引進(jìn)行訪問(wèn)的組件。但是
                ,Vector 的大小可以根據(jù)需要增大或縮小,以適應(yīng)創(chuàng)建 Vector 后進(jìn)行添加或移除項(xiàng)的操作。此實(shí)現(xiàn)是同步的
                。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多