map筆記:
HashMap的特點(diǎn):
(1)無(wú)序
(2)key唯一冗锁,value不唯一
(3)key相同庞萍,value進(jìn)行覆蓋
存儲(chǔ)數(shù)據(jù)可以允許使用 null 值和 null 鍵
存儲(chǔ)數(shù)據(jù)的不一定是有序排列
TreeMap
TreeMap存儲(chǔ)數(shù)據(jù)的方式是按照紅黑樹存儲(chǔ)的遣铝,存儲(chǔ)數(shù)據(jù)的順序是自然順序
TreeMap中不可以存儲(chǔ)Null值的Key,Value可以
Hashtable
Key和Value都不能為null莉擒,一旦存儲(chǔ)null值會(huì)報(bào)空指針異常
Map的遍歷
三種遍歷方式
第一種遍歷方式: 通過(guò)key去獲取value
Set set=map.keySet();
for(Object obj:set){
System.out.println("key:"+obj+"values:"+map.get(obj));
}
第二種遍歷方式:直接獲得value
Collection values=map.values();
for(Object obj:set){
System.out.println(obj);
}
第三種遍歷方法:通過(guò)map里的一個(gè)內(nèi)部接口
Set<Map.Entry> entry= map.entrySet();
for(Map.Entry entry1:entry){
System.out.println("key:"+entry.getKey()+"values:"+entry.getValue());
}
數(shù)據(jù)結(jié)構(gòu)
ArrayList
底層是一個(gè)數(shù)組結(jié)構(gòu)
集合添加的方法(add()):數(shù)組的擴(kuò)容酿炸,數(shù)組的拷貝,長(zhǎng)度的增加
集合長(zhǎng)度(size())
判斷集合是否為null (isEmpty())
通過(guò)索引刪除的方法(remove()) 每刪除一個(gè)值涨冀,size--
通過(guò)索引獲得集合的值(get()) 傳進(jìn)來(lái)的索引值>集合長(zhǎng)度填硕,拋RuntimeException