最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java 集合----Map、Collection

 更新時間:2016年04月28日 15:53:54   作者:liuyaqian  
HashSet 的 add() 方法添加集合元素時實際上轉(zhuǎn)變?yōu)檎{(diào)用 HashMap 的 put()方法來添加 key-value 對。HashMap 的 put() 方法.hashCode() 判斷返回值相等,如果返回值相等則再通過 equals 比較也返回 true,最終認(rèn)為key對象是相等的已經(jīng)在HashMap中存在。

接口:紅色;實現(xiàn)類:黑色字體

一、 Collection集合 

Collection

 |_____Set(HashSet)

 |      |_____SortedSet(TreeSet)

 |_____List(ArrayList,LinkedList,Vector )

 

Collection:集合層次中的根接口,JDK沒有提供這個接口的實現(xiàn)類。

List: 有序(按照放入的順序)、可以重復(fù)、有下標(biāo)。

Set:無序、不可以重復(fù)、無下標(biāo)。

SortedSet:是Set接口的子接口,SortedSet中的元素是有序的(按字母升序)。

          通過 Comparable接口的compareTo方法,實現(xiàn)元素是有序的。放入的元素都必須實現(xiàn) Comparable 接口(或者被指定的Comparator 所接受)。

 

List接口的實現(xiàn)類的區(qū)別

ArrayList :本質(zhì)上是一個數(shù)組。線程不安全。查詢(get/set)快,增刪(add/remove)慢。

LinkedList: 本質(zhì)上是一個雙向鏈表。線程不安全。查詢(get/set)慢,增刪(add/remove)快。

Vector :和ArrayList幾乎是完全相同的,唯一的區(qū)別在于Vector是同步類(synchronized),是線程安全的。

 

二、Map集合

Map(HashMap,Hashtable)

 |_____SortedMap(TreeMap)

 

Map:存儲的是key-value對,不能包含重復(fù)的key,可以有重復(fù)的value。

SortedMap:Map的子接口SortedMap是一個按升序排列key的Map。

HashMapHashtableTreeMap的區(qū)別

HashMap :線程不安全。key和value都可以是null。元素是無序的。底層是哈希表數(shù)據(jù)結(jié)構(gòu)。

Hashtable:線程安全。key和value都不可以是null。元素是無序的。底層是哈希表數(shù)據(jù)結(jié)構(gòu)。

TreeMap:線程不安全。key和value都不可以是null。元素是有序的(按字母升序)。底層是二叉樹數(shù)據(jù)結(jié)構(gòu)。

 

三、Mapkey、Set 的值如何實現(xiàn)不重復(fù)

 

Map 放相同的key,之后的覆蓋之前的

Map map=new  HashMap();

map.put(“name”,”張三”);

map.put(“name”,”王五”);------有效,覆蓋之前的

Set放相同的元素時,第一個是有效的,之后的不會被放入

Set set=new HashSet();

set.add(“111”);---有效

set.add(“222”);----判斷已有,不會放入

1、HashMap put HashSet add

 由于 HashSet 的 add() 方法添加集合元素時實際上轉(zhuǎn)變?yōu)檎{(diào)用 HashMap 的 put() 方法來添加 key-value 對。HashMap 的 put() 方法首先調(diào)用.hashCode() 判斷返回值相等,如果返回值相等則再通過 equals 比較也返回 true,最終認(rèn)為key對象是相等的已經(jīng)在HashMap中存在了。

2、TreeMap put  TreeSet add

TreeMap中調(diào)用put方法添加鍵值時,調(diào)用對象的它的 compareTo(或 compare)方法對所有鍵進(jìn)行比較,此方法飯回0,則認(rèn)為兩個鍵就是相等的。

TreeSet添加元素的時候,調(diào)用compareTo或compare方法來定位元素的位置,也就是返回compareTo或compare返回0則認(rèn)為是同一個位置的元素,即相同元素

相關(guān)文章

  • Java面試題沖刺第二十三天--分布式

    Java面試題沖刺第二十三天--分布式

    這篇文章主要為大家分享了最有價值的三道關(guān)于分布式的面試題,涵蓋內(nèi)容全面,包括數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的題目、經(jīng)典面試編程題等,感興趣的小伙伴們可以參考一下
    2021-08-08
  • java生成csv文件亂碼的解決方法示例 java導(dǎo)出csv亂碼

    java生成csv文件亂碼的解決方法示例 java導(dǎo)出csv亂碼

    這篇文章主要介紹了java生成csv文件亂碼的解決方法,大家可以直接看下面的示例
    2014-01-01
  • 使用maven命令安裝jar包到本地倉庫的方法步驟

    使用maven命令安裝jar包到本地倉庫的方法步驟

    這篇文章主要介紹了使用maven命令安裝jar包到本地倉庫的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Java中的CyclicBarrier同步屏障詳解

    Java中的CyclicBarrier同步屏障詳解

    這篇文章主要介紹了Java中的CyclicBarrier同步屏障詳解,CyclicBarrier也叫同步屏障,在JDK1.5被引入,可以讓一組線程達(dá)到一個屏障時被阻塞,直到最后一個線程達(dá)到屏障時,屏障才會開門,所有被阻塞的線程才會繼續(xù)執(zhí)行,需要的朋友可以參考下
    2023-09-09
  • Spring Boot實現(xiàn)文件上傳示例代碼

    Spring Boot實現(xiàn)文件上傳示例代碼

    本篇文章主要介紹了Spring Boot實現(xiàn)文件上傳示例代碼,可以實現(xiàn)單文件和多文件的上傳,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • Java設(shè)計模式之單例模式實例分析

    Java設(shè)計模式之單例模式實例分析

    這篇文章主要介紹了Java設(shè)計模式之單例模式,以實例形式較為詳細(xì)的分析了單例模式的概念、定義及簡單實現(xiàn)技巧,需要的朋友可以參考下
    2015-11-11
  • springboot圖片驗證碼功能模塊

    springboot圖片驗證碼功能模塊

    用戶登錄幾乎是一個線上系統(tǒng)必不可少且使用相對比較頻繁的一個模塊,為了防止惡意暴力嘗試,防止洪水攻擊、防止腳本自動提交等,驗證碼是一個較為便捷且行之有效的預(yù)防手段,這篇文章主要介紹了springboot圖片驗證碼功能模塊,需要的朋友可以參考下
    2022-04-04
  • jdk中密鑰和證書管理工具keytool常用命令詳解

    jdk中密鑰和證書管理工具keytool常用命令詳解

    keytool JAVA是個密鑰和證書管理工具。它使用戶能夠管理自己的公鑰/私鑰對及相關(guān)證書,用于(通過數(shù)字簽名)自我認(rèn)證(用戶向別的用戶/服務(wù)認(rèn)證自己)或數(shù)據(jù)完整性以及認(rèn)證服務(wù)
    2014-01-01
  • SpringBoot如何使用MyBatisPlus逆向工程自動生成代碼

    SpringBoot如何使用MyBatisPlus逆向工程自動生成代碼

    本文介紹如何使用SpringBoot、MyBatis-Plus進(jìn)行逆向工程自動生成代碼,并結(jié)合Swagger3.0實現(xiàn)API文檔的自動生成和訪問,通過詳細(xì)步驟和配置,確保Swagger與SpringBoot版本兼容,并通過配置文件和測試類實現(xiàn)代碼生成和Swagger文檔的訪問
    2024-12-12
  • Java中的分布式鎖與同步鎖使用詳解

    Java中的分布式鎖與同步鎖使用詳解

    這篇文章主要介紹了Java中的分布式鎖與同步鎖使用詳解,在分布式系統(tǒng)中,由于存在多個節(jié)點并行執(zhí)行任務(wù),可能會出現(xiàn)競爭條件和數(shù)據(jù)不一致的問題,分布式鎖通過約束同一時刻只有一個節(jié)點能夠獲得鎖的方式,確保了對共享資源的獨占訪問,需要的朋友可以參考下
    2023-07-07

最新評論

松溪县| 兴业县| 宣恩县| 林口县| 遂溪县| 赤壁市| 团风县| 厦门市| 讷河市| 中阳县| 莎车县| 墨竹工卡县| 治县。| 福建省| 山阴县| 元谋县| 宜宾市| 肥城市| 寿宁县| 台南市| 囊谦县| 娄底市| 庆元县| 永年县| 赤水市| 宝山区| 玛沁县| 永丰县| 体育| 资中县| 延寿县| 米泉市| 青田县| 吉木萨尔县| 双峰县| 唐海县| 上栗县| 平武县| 泽库县| 龙江县| 中牟县|