谈谈对集合框架的理解?
集合框架包括集合不映射(Collection and Map)
List 元素有先后次序的集合, 元素有 index 位置, 元素可以重復(fù),繼承自 Collection 接口,實現(xiàn)類: ArrayList, Vector, LinkedList
List 表示有先后次序的對象集合
ArrayList是使用變長數(shù)組算法實現(xiàn)的,ArrayList 實現(xiàn)自 List
1) ?ArrayList 和 Vector 的比較
n ?Vector(1.0 版本提供的),線程安全的,效率稍低,也是使用變長數(shù)組算法實現(xiàn)的,繼承自 List 接口
n ? ArrayList,線程不安全的,效率高速度快(現(xiàn)在較常用)
? 2) ArrayList 和 LinkedList 的比較
n ?LinkedList 是采用雙向循環(huán)鏈表實現(xiàn)的?List
n ????ArrayList 是采用變長數(shù)組算法實現(xiàn)的的?List
在ArrayList的中間插入或刪除一個元素意味著這個列表中剩余的元素都會被移動;而在LinkedList的中間插入或刪除一個元素的開銷是固定的。
ArrayList查詢速度快,而LinkedList增刪速度快
Set 元素?zé)o續(xù), 不能重復(fù)添加, 是數(shù)學(xué)意義上的集合, 繼承自 Collection 接口
n ?實現(xiàn)類: HashSet(是一個只有?Key的?HashMap),使用Set時要重寫hashCode,equals方法
HashMap 以鍵-值對(關(guān)鍵字:值)的形式存儲對象,關(guān)鍵字 key 是唯一的、不重復(fù)的
1) ?key 可以是任何對象,Value可以任何對象
2) ?(key:value)成對放置在集合中
3) ?重復(fù)的 key 算一個,重復(fù)添加是替換操作(會覆蓋原來的元素)
4) HashMap 根據(jù) key 檢索查找value 值
HashMap ????新,非線程安全,不檢查鎖,快
Hashtable ???舊 ?(JDK1.2 版本以前),線程安全,檢查鎖,慢一點(差的很小)
?
總結(jié)
以上是生活随笔為你收集整理的谈谈对集合框架的理解?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pythoncount函数怎么用_pyt
- 下一篇: starops 云效运维 文档_阿里云