collection
|--list 有序,可重複
|--arraylist
底層資料結構是陣列,查詢快,增刪慢。
執行緒不安全,效率高
|--vector
底層資料結構是陣列,查詢快,增刪慢。
執行緒安全,效率低
|--linkedlist
底層資料結構是鍊錶,查詢慢,增刪快。
執行緒不安全,效率高
|--set 無序,唯一
|--hashset
底層資料結構是雜湊表。
如何保證元素唯一性的呢?
依賴兩個方法:hashcode()和equals()
開發中自動生成這兩個方法即可
|--linkedhashset
底層資料結構是鍊錶和雜湊表
由鍊錶保證元素有序
由雜湊表保證元素唯一
|--treeset
底層資料結構是紅黑樹。
如何保證元素排序的呢?
自然排序(元素具備比較性):讓元素所屬的類實現comparable介面
比較器排序(集合具備比較性):讓集合構造方法接收comparator的實現類物件
如何保證元素唯一性的呢?
根據比較的返回值是否是0來決定
集合 Collection集合總結
list有序,可重複 abstractlist 父類abstractcollection抽象類,實現了list介面 arraylist 父類abstractlist 底層資料結構是陣列,查詢快,增刪慢。執行緒不安全,不同步,效率高 vector 父類abstractlist 底層資料結構是陣列,查詢...
Collection集合 總結筆記
2 set集合 理解 1 set集合的特點 無序,唯一 2 hashset集合 掌握 a 底層資料結構是雜湊表 是乙個元素為鍊錶的陣列 b 雜湊表底層依賴兩個方法 hashcode 和equals 執行順序 首先比較雜湊值是否相同 相同 繼續執行equals 方法 返回true 元素重複了,不新增 ...
AJPFX總結Collection集合(上)
出現集合類的原因 物件導向語言對事物的體現都是以物件的形式,所以為了方便對多個物件的操作,就對物件進行儲存,集合就是儲存物件最常用的乙個方式.陣列和集合都是容器有何不同?陣列雖也可儲存物件,但長度是固定的,集合長度是可變的,陣列中可以儲存基本資料型別,集合只能儲存物件.特點 集合只用於儲存物件,集合...