不算并發的話,java的Map(目前)一共有六種
常用:HashMap
較常用:TreeMap、LinkedHashMap、EnumMap
不太常用:WeakHashMap、IdentityHashMap
除了LinkedHash繼承Hash,其他都是繼承AbstractMap
Tree與Hash的不同是,Tree是有序的(目前使用紅黑樹),因此元素必須實現Comparable接口
添加元素,Tree比Hash慢,但只是一點點
LinkedHash記住插入元素的順序,put和get都會把位置挪到最后!
Enum的key是枚舉
WeakHash使用弱引用保存key,如果這個key沒人引用,就會定時回收(tomcat源碼里有使用)
IdentityHash的key不使用hashCode(),使用System.identityHashCode,比較不用equals,而用==。在對象序列化等才有用
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/74857.html
摘要:集合的種類常見的集合類分如下幾個種類詳解接口是和接口的父接口,也是集合類除外根接口。接口集合中元素的存放特點是元素有序,同一元素可重復。總結中集合是一個非常重要的知識點,在實際運用中也是常常會使用到。 集合的種類 常見的集合類分如下幾個種類: Collection - List - ArrayList - LinkedList - Set - HashSet...
摘要:在學習的實現類是基于實現的前,先來介紹下接口及其下的子接口先看下的架構圖如上圖是映射接口,中存儲的內容是鍵值對。是繼承于的接口。中的內容是排序的鍵值對,排序的方法是通過比較器。 Map 在學習Set(Set的實現類是基于Map實現的)、HashMap、TreeMap前,先來介紹下Map接口及其下的子接口.先看下Map的架構圖:showImg(https://segmentfault.c...
摘要:提供了線程安全的共享對象,在編寫多線程代碼時,可把不安全的整個變量封裝進,或者把該對象與線程相關的狀態使用保存并不能替代同步機制,兩者面向的問題領域不同。 ThreadLocal類 使用ThreadLocal類可以簡化多線程編程時的并發訪問,使用這個工具類可以很簡捷地隔離多線程程序的競爭資源。Java5之后,為ThreadLocal類增加了泛型支持,即ThreadLocal Threa...
閱讀 1906·2021-11-22 14:44
閱讀 1672·2021-11-02 14:46
閱讀 3657·2021-10-13 09:40
閱讀 2601·2021-09-07 09:58
閱讀 1586·2021-09-03 10:28
閱讀 1658·2019-08-29 15:30
閱讀 976·2019-08-29 15:28
閱讀 1469·2019-08-26 12:20