国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java 集合總結(Collection系列與Map系列)

zhou_you / 1813人閱讀

摘要:前言原文在點這里,這也是作者的個人網站,希望多多支持,對于作者而言,集合主要分為兩個派系,一個是系列,一個是系列。的線程安全版本,內部的實現幾乎和一模一樣。也是的線程安全版本,并且使用了分段加鎖機制,所以效率上要比要好很多。

前言

原文在: 點這里,這也是作者的個人網站,希望多多支持,O(∩_∩)O~

對于作者而言,Java 集合主要分為兩個派系,一個是 Collection 系列,一個是 Map 系列。

Collection 系列

如下圖所示:

那么對于他們的特點,簡單來說可以概括為:

Collection:它是一個根接口,JDK沒有它的實現類,內部僅僅做 add(),remove(),contains(),size() 等方法的聲明。

List:它繼承于 Collection,增加了可以對每個元素插入的位置進行精確的控制的方法,另外,插入的值允許為空,也允許有重復的值。

實現類 實現方式 是否同步 是否支持插入空值 元素是否支持重復
ArrayList 數組 不同步 支持 支持
Vector 數組 同步 支持 支持
LinkedList 鏈表 不同步 支持 支持

那么對于每一個類(接口)的細節,可以看:

Java 集合:Collection,List,ArrayList,Vector,LinkedList(實現方式,對比)

Map

那么對于他們的特點,簡單來說可以概括為:

HashMap:最常用的 Map,非同步,不保證順序。允許有空值和空鍵。 采用鏈表法解決哈希沖突,并且在發生哈希沖突的時候,新的 Node 會加入到鏈表的最下端;在 JDK8 中哈希沖突過多的情況下鏈表會變成紅黑樹從而保證效率;

LinkedHashMap:繼承HashMap,Iterator下 能保證插入的先后順序,原理是在LinkedHashMap中加入了鏈表,并且該鏈表還是一個雙向鏈表。

TreeMap:能夠根據 key 值來有序插入 (也就是鍵值對會根據key排序好),原理使用了紅黑樹,每次插入都會對樹進行調整。

HashTable:HashMap的線程安全版本,內部的實現幾乎和 HashMap 一模一樣。但是由于其同步是使用了 synchronized,效率較低。

ConcurrentHashMap:也是HashMap的線程安全版本,并且使用了分段加鎖機制,所以效率上要比HashTable要好很多。

那么對于每一個類(接口)的細節,可以看:

Java 集合:HashMap(put方法的實現 與 哈希沖突)

Java 集合:LinkedHashMap 工作原理及實現(轉載)

Java 集合:HashSet,HashTable,以及 ConcurrentHashMap 概念

Java 集合:TreeMap 工作原理及實現(轉載)

最后

作者也是一名Java新手,上述有些是基于自己的理解作出的總結,有些是轉載別人的文章,如果有什么錯誤的地方,還麻煩各位斧正,由于沒做評論的功能,所以暫時 github issue 地址:點這里

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64911.html

相關文章

  • java源碼

    摘要:集合源碼解析回歸基礎,集合源碼解析系列,持續更新和源碼分析與是兩個常用的操作字符串的類。這里我們從源碼看下不同狀態都是怎么處理的。 Java 集合深入理解:ArrayList 回歸基礎,Java 集合深入理解系列,持續更新~ JVM 源碼分析之 System.currentTimeMillis 及 nanoTime 原理詳解 JVM 源碼分析之 System.currentTimeMi...

    Freeman 評論0 收藏0
  • Java集合總結【面試題+腦圖】,將知識點一網打盡!

    摘要:而在集合中,值僅僅是一個對象罷了該對象對本身而言是無用的。將這篇文章作為集合的總結篇,但覺得沒什么好寫就回答一些面試題去了,找了一會面試題又覺得不夠系統。 前言 聲明,本文用的是jdk1.8 花了一個星期,把Java容器核心的知識過了一遍,感覺集合已經無所畏懼了??!(哈哈哈....),現在來總結一下吧~~ 回顧目錄: Collection總覽 List集合就這么簡單【源碼剖析】 Ma...

    yearsj 評論0 收藏0
  • kotlin學習筆記-異常好玩的list集合總結

    摘要:可能是最流行的集合類型。它是一個范性有序的集合。一個無序并不支持重復的集合。接口繼承接口,集合中可以存放重復對象。集合類提供了,等高階函數去處理。我們聲明一個集合或者數組,可以轉換成相應類型的集合。調用轉換為可變集合。 不積跬步無以至千里,不積小流無以成江海 先看看Kotlin中for循環的遍歷 fun testList(){ var StringVal = 12_...

    RebeccaZhong 評論0 收藏0
  • 集合框架知識系列01 總體框架

    摘要:集合工具包是在包中,實現了數據結構數組棧鏈表隊列映射和集合。集合主要可以劃分為個部分列表集合映射工具類迭代器枚舉類和。集合的框架圖如下圖片來源集合頂層接口主要有和。和都是集合遍歷相關接口,是特有的遍歷工具接口 Java集合工具包是在java.util.*包中,實現了數據結構:數組、棧、鏈表、隊列、映射和集合。Java集合主要可以劃分為4個部分:List列表、Set集合、Map映射、工具...

    honhon 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<