简述List、Set、Map类型的集合的各自特点
簡述List、Set、Map類型的集合的各自特點
轉(zhuǎn)載于https://blog.csdn.net/m0_37668335/article/details/80556862?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
JAVA集合主要分為三種類型:
Set(集) List(列表) Map(映射) Collection 接口
Collection是最基本的集合接口,聲明了適用于JAVA集合(只包括Set和List)的通用方法。 Set 和List 都繼承了Conllection,Map沒有
Set(集合): Set是最簡單的一種集合。集合中的對象不按特定的方式排序,并且沒有重復(fù)對象。 set接口主要實現(xiàn)了兩個實現(xiàn)類:
HashSet : HashSet類按照哈希算法來存取集合中的對象,存取速度比較快
TreeSet : TreeSet類實現(xiàn)了SortedSet接口,能夠?qū)现械膶ο筮M(jìn)行排序。
List(列表): List的特征是其元素以線性方式存儲,集合中可以存放重復(fù)對象。 List接口主要實現(xiàn)類包括:
ArrayList() : 代表長度可以改變得數(shù)組。可以對元素進(jìn)行隨機的訪問,向ArrayList()中插入與與刪除元素的速度慢。
LinkedList(): 在實現(xiàn)中采用鏈表數(shù)據(jù)結(jié)構(gòu)。插入和刪除速度快,訪問速度慢。
對于List的隨機訪問來說,就是只隨機來檢索位于特定位置的元素。 List 的 get(int index) 方法放回集合中由參數(shù)index指定的索引位置的對象,下標(biāo)從“0” 開始。
Map(映射): Map 是一種把鍵對象和值對象映射的集合,它的每一個元素都包含一對鍵對象和值對象。 Map沒有繼承于Collection接口 從Map集合中檢索元素時,只要給出鍵對象,就會返回對應(yīng)的值對象。
Map集合中的鍵對象不允許重復(fù),也就說,任意兩個鍵對象通過equals()方法比較的結(jié)果都是false. 但是可以將任意多個鍵獨享映射到同一個值對象上。
總結(jié): List按對象進(jìn)入的順序保存對象,不做排序或編輯操作。Set對每個對象只接受一次,并使用自己內(nèi)部的排序方法(通常,你只關(guān)心某個元素是否屬于Set,而不關(guān)心它的順序–否則應(yīng)該使用List)。Map同樣對每個元素保存一份,但這是基于"鍵"的,Map也有內(nèi)置的排序,因而不關(guān)心元素添加的順序。如果添加元素的順序?qū)δ愫苤匾?#xff0c;應(yīng)該使用 LinkedHashSet或者LinkedHashMap.
總結(jié)
以上是生活随笔為你收集整理的简述List、Set、Map类型的集合的各自特点的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java之Collections.emp
- 下一篇: 电脑pdf截长图滚动截图保存图片