<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    幻境
    We are extremely fortunate not to know precisely the kind of world we live in
    posts - 22,comments - 39,trackbacks - 0

    (原文發(fā)表于http://www.ondev.net/post/show/565,轉(zhuǎn)載請注明出處)

    關于Java Collection Framework,你可能已經(jīng)知道如下一些事實

    1. Vector是線程安全的,ArrayList不是
    2. ArrayList的讀操作比LinkedList快,LinkedList的append操作比ArrayList快
    3. Set中不可能有兩個相等的元素,也就是說,如果e1和e2都在同一個Set中,那么不可能有e1.equals(e2)
    4. HashMap是線程不安全的,HashTable是線程安全的


    但是你可能還不知道或者不了解這些事情:

    1. LinkedList不是線程安全的
    2. 不管是在多線程還是單線程的環(huán)境下,ArrayList都要比Vector快很多倍
    3. Set中可以插入null,不過最多只會有一個
    4. HashMap中可以插入null,HashTable中不行
    5. TreeSet使用compareTo代替equals判斷是否兩個元素相等
    6. HashMap中的元素,無論是keySet還是valueSet,都不一定是按照插入時間先后排序的,HashSet也一樣
    7. 對于非線程安全的類,比如HashMap,ArrayList,TreeSet,可以使用Collections.synchronizedXXX方法(比如synchronizedSet,synchronizedList,synchronizedMap)
    8. 你可以使用Collections.unmodifiableList來構建出一個不能被修改的List
    9. 你可以使用Arrays.equals來判斷兩個數(shù)組是否相等
    10. WeakHashMap使用元素的引用而不是值作為key,也就是說必須在引用相同(a==b)的情況下才能找到相關的值
    11. 對于WeakHashMap,一旦引用失效,相應的值也就不存在了,比如下面一段代碼中:

    ?
    1. public ? class ?TestHashMap?{? ??
    2. ??
    3. ???? public ? static ?WeakHashMap?wHmp=? new ?WeakHashMap();? ??
    4. ???? ??
    5. ???? public ? static ? void ?main(String?args[]){? ??
    6. ???????String?s1?=? new ?String( "one" );? ??
    7. ???????wHmp.put(s1, new ?Integer( 1 ));? ??
    8. ???????addObject(wHmp);? ??
    9. ???????Set?setHmp=?wHmp.keySet();? ??
    10. ???????? ??
    11. ??????? for (Iterator?it=setHmp.iterator();it.hasNext();){? ??
    12. ??????????System.out.println(wHmp.get(it.next()));? ??
    13. ??????}? ??
    14. ???????? ??
    15. ???}? ??
    16. ???? ??
    17. ??? public ? static ? void ?addObject(WeakHashMap?wHmp){? ??
    18. ???????? ??
    19. ?????String?s2?=? new ?String( "two" );? ??
    20. ?????String?s3?=? new ?String( "three" );? ??
    21. ?????wHmp.put(s2, new ?Integer( 2 ));? ??
    22. ?????wHmp.put(s3, new ?Integer( 3 ));? ??
    23. ?????s2= null ;? ??
    24. ?????s3= null ;? ??
    25. ?????System.gc();? ??
    26. ???}? ??
    27. }???

    最后打印出來的結果只有"one”

    posted on 2009-04-08 10:28 閱讀(627) 評論(0)  編輯  收藏 所屬分類: 編程相關
    主站蜘蛛池模板: 国产成人高清精品免费观看| 成人福利在线观看免费视频| 亚洲综合激情五月色一区| 亚洲第一se情网站| 日本在线免费观看| 久久精品国产精品亚洲蜜月| 精品亚洲AV无码一区二区三区| 国产精品成人观看视频免费| 亚洲一区二区影视| 无码视频免费一区二三区| 亚洲av乱码中文一区二区三区| 青青草国产免费久久久91| 国产亚洲漂亮白嫩美女在线| 99热在线精品免费播放6| 日本一线a视频免费观看| 亚洲人成在线播放网站岛国| 美国毛片亚洲社区在线观看 | 最近中文字幕国语免费完整| 91精品国产亚洲爽啪在线影院 | 亚洲成a人片7777| 免费看美女裸露无档网站| 亚洲乱妇老熟女爽到高潮的片| 在线观看免费国产视频| 一级黄色片免费观看| 国产美女在线精品免费观看| 久久精品国产亚洲av麻| 91嫩草免费国产永久入口| 亚洲Av熟妇高潮30p| 一级女性全黄生活片免费看| 亚洲自偷自偷偷色无码中文| 99久久99久久免费精品小说| 亚洲欧美日韩自偷自拍| 国产亚洲一区二区三区在线不卡 | 亚洲另类无码专区丝袜| 亚洲狠狠爱综合影院婷婷| 亚洲午夜免费视频| 亚洲AV色无码乱码在线观看| 亚洲伊人久久精品影院| 本免费AV无码专区一区| 中文字幕亚洲乱码熟女一区二区 | 牛牛在线精品观看免费正|