集合框架Map

2021-09-23 11:04:19 字數 2584 閱讀 1734

在學map的時候,肯定是懵逼的,所以要先進行了解map的定義,然後看看map的應用

接下來我們先了解下map

了解map

map集合中存放的都是一組組對映關係 ----key=value

在集合中允許巢狀,key不能重複

在map中增加不同於其他的集合,其他的集合用add()來增加,而map是用put()

方法

1、增加

put(k key, v value)

putall(map extends k,? extends v> m)增加同乙個key的時候,前面乙個value會被替換

2、刪除

clear()

remove(object key)

3、判斷

containskey(object key)

containsvalue(object value)

isempty()

4、獲取

get(object key)

size()

values()

兩種遍歷方式

1:map.entryset

set> entryset = map.entryset();

for (entryentry : entryset)

system.out.println("-------------------------");

2:map.keyset

setkeyset = map.keyset();

for (string key : keyset)

關於put:1: 新增元素的同時 他可以編輯原有的元素 如果說集合中沒有key對應的value,那麼就往集合中新增元素

如果說集合中對應的key有values值,則代表替換原有的值

2: 返回替換前原有的value值

hashmap、treemap和hashtable的區別

hashtable:底層是雜湊表資料結構,不可以存入null鍵null值,該集合石執行緒同步的,jdk1.0,效率低

hashmap:底層是雜湊表資料結構,允許使用null值和null鍵,該集合是不同步的。將hashtable替代;jdk1.2,效率高

treemap:底層是二叉樹資料結構,執行緒不同步,可以用於給map集合中的鍵進行排序

1、將學生作為鍵,位址作為值進行儲存,名字年齡相同則被認定為乙個人,最後按年齡進行排序輸出

public class treemapdemo }}

//排序:先寫乙個實體類 實現comparable介面

class student implements comparable

public void setname(string name)

public int getage()

public void setage(int age)

@override

public string tostring()

public student(string name, int age)

public student() {}

//重寫

@override

public int hashcode()

//判重equals 不然還是原來的數

@override

public boolean equals(object obj)

@override

public int compareto(student o)

return num; }}

輸出結果:

student [name=張薩, age=18]====北京

student [name=王二, age=22]====廣東

student [name=小紅, age=26]====湖南

需求改變、按姓名進行排序

class stucomp implements comparator

return num; }}

輸出結果:

student [name=小紅, age=26]====湖南

student [name=張薩, age=18]====北京

student [name=王二, age=22]====廣東

2,統計字串中字元出現次數,按次數排序思路1、將字串轉為字元陣列,將這個字串中的字元當作map集合中的key,將出現的次數作為value值;

2、當字元第一次出現的現象,那麼用它在集合中進行尋找,返回值必然為null,之後該字元對應的值改為1 ;

3、如果說該字元不是第一次出現,該字元對應值不為null,然後應該+1

集合框架 Map集合

map集合 同collection,是集合框架中的頂層介面。一次新增一對元素,collection一次新增乙個元素。所有,map集合也稱為雙列集合,collection集合稱為單列集合。介面map key是鍵,value是值,其實map集合中儲存的就是鍵值對,map集合中必須保證鍵的唯一性。常用方法...

集合框架Map

map集合中存放的都是一組組對映關係,乙個鍵對應乙個值,並且鍵不能重複。它有三個子類 hashtable,hashmap,treemap。我們常用的也就是hashmap和treemap。幾個主要的方法就是put,entryset,keyset.將學生作為鍵,位址作為值進行儲存,名字年齡相同則被認定為...

集合框架 Map

map介面專門處理鍵值對映資料的儲存,可以根據鍵實現對值的操作。hashmap是map最常用的實現類 常用方法 map常用方法演示 public class testmap map的遍歷 通過迭代器iterator實現遍歷 增強型for迴圈 鍵值對 遍歷的方式 set entry map.entry...