collection與map的方法小結
collection:
add()新增元素
addAll(collection)將集合中的元素全部新增
clear()移除所有的元素
contains()判斷是否包含給定的元素或者給定的集合
equals()進行比較,如果重寫,則判斷內容,沒重寫則判斷地址值
hashcode()返回集合的哈西程式碼值
isempty()判斷是否為空
iterator()返回迭代器
remove()移除指定的元素(若存在)
removeAll(collection)刪除給定集合存在元素
size()返回集合元素的數目
toArray()返回包含此集合所有元素的陣列
Hashset:
需要重寫equals()和hashcold()方法來保證唯一
clone()克隆但是二者關聯,只會克隆地址值,淺克隆
treeset:
clone()同hashset
first()返回集合中第一個元素,最小的
last()返回最後一個元素,最大的
pollfist()移除第一個元素,並返回第一個元素,null則為空
pollLast()移除最後一個元素,並返回最後一個元素,null則為空
list:
add(int a,E e)在指定的a處插入E型別的元素e
addAll(int a,collection e)在指定的a處插入集合
get(int a)返回指定索引處的元素
indexof()返回第一次出現給定元素的索引,如果不包含,返回-1
lastindexof()返回最後依次出現給定元素的索引,如果不包含返回-1
listIterator() List集合的指定迭代器
listIterator(int a) List集合指定位置開始的的指定迭代器
a.retainall(b)將a集合中b集合不包含的數全部刪除,並不改變b集合,若a發生改變則返回true,反之false
set(int a,E e)將a處的元素更換為e
ArrayList:
sort(comparator c)分類列表使用提供的comparatorto比較元素
sublist(int a, int b)擷取a到b處的元素
ArrayList:底層資料結構是陣列,查詢快,增刪慢。執行緒不安全,效率高。
Vector:底層資料結構是陣列,查詢快,增刪慢。執行緒安全,效率低。
LinkedList:底層資料結構是連結串列,查詢慢,增刪快。
map:
clear()清空
containskey(key)判斷是否包含指定的鍵
containsValue(Value)判斷是否包含指定的值(可能有多個
get(key)獲取指定鍵對應的值
isEmpty()是否為空
put()插入值
putAll()全部插入
remove(key)移除
removeAll(map)移除指定的全部
replace(key,value)替換Key的值
erplace(key,oldvalue,newvalue)若給定的鍵對應oldvalue則將oldvalue替換為newvalue
size()長度
Hsahmap:與map基本一致
treemap:
tailMap(K fromKey) 返回從這個Map的關鍵是大於或等於 fromKey部分。
submap(K key, K key2)擷取key到key2的值為
LinkedHashMap的特點: 底層的資料結構是連結串列和雜湊表 元素有序 並且唯一,元素的有序性由連結串列資料結構保證 唯一性由 雜湊表資料結構保證
鍵的資料結構是紅黑樹,可保證鍵的排序和唯一性,排序分為自然排序和比較器排序。 執行緒是不安全的效率比較高
HashMap和Hashtable的區別: 檢視API可以知道
HashMap: 執行緒不安全,效率高.允許null值和null鍵
Hashtable: 執行緒安全 , 效率低.不允許null值和null鍵