常見數據結構Map的特點及常用方法


一、圖的結構:
  • Map
    • HasMap
    • LinkedHashMap
    • TreeMap
 
二、Map
 
Map特點:
1.不能包含重復的鍵; 每個鍵可以映射到最多一個值;
2.可以不同鍵指向同一Value;
3.支持用戶自由綁定Key值與Value;
4.,可以直接訪問Key值獲得對應Value;
 
聲明代碼:
1 Map<Integer,Integer> map=new HashMap<Integer,Integer>();

 

 
常用方法:
 
常用實現類:
HashMap、LinkedHashMap、TreeMap
 
三、HashMap
 
HasMap特點:
1.鍵值必須唯一,不允許存在重復鍵值
2.HashMap中條目是沒有順序的,無法以輸入順序輸出
 
申明代碼:
Map<String,Intager> map=new HashMap<String,Intager>();
HashMap<String,Intager> map=new HashMap<String,Intager>();

 

 
HashMap常見方法:
 
HashMap遍歷方法:
1.迭代器遍歷
Iterator it = map.keySet().iterator();    
    while (it.hasNext()) {    
    Object key = iter.next();
    Object val = map.get(key);
}

 

2.foreach遍歷
for (Integer key : map.keySet()) {
    map.get(key);
}
 
 
四、LinkedHashMap
 
 
LinkedHasMap特點:
1.鍵值必須唯一,不允許存在重復鍵值
2.HashMap中條目是有順序的,輸出是順序可以是輸入順序,也可以是最后一遍遍歷順序
 
申明代碼:
1 Map<String,Intager> map=new LinkedHasMap<String,Intager>();
2 LinkedHasMap<String,Intager> map=new  LinkedHasMap<String,Intager>();

 

 
LinkedHasMap常見方法:
 
LinkedHasMap遍歷方法:
1.迭代器遍歷
Iterator it = map.keySet().iterator();    
    while (it.hasNext()) {    
    Object key = iter.next();
    Object val = map.get(key);
}

 

2.foreach遍歷
for (Integer key : map.keySet()) {
    map.get(key);
}

 

 
五、TreeMap
 
 
TreeMap特點:
1.鍵值必須唯一,不允許存在重復鍵值
2.HashMap中條目是有順序的,按照key值順序輸出,也可以調用Compartor,進行倒敘遍歷輸出
 
申明代碼:
Map<String,Intager> map=new TreeMap<String,Intager>();
TreeMap<String,Intager> map=new TreeMap<String,Intager>();
 
TreeMap常見方法:
 
TreeMap遍歷方法:
1.迭代器遍歷
Iterator it = tempMap.entrySet().iterator();
while (it.hasNext()) {
   Map.Entry entry = (Map.Entry) it.next();
   Object key = entry.getKey();
   Object value = entry.getValue();
   System.out.println("key=" + key + " value=" + value);
}
2.foreach遍歷
for(Map.Entry<Integer,Integer> entry:map.entrySet()){
    System.out.println(entry.getKey()+" "+entry.getValue());
}
3.for遍歷
for (Iterator i = Map.keySet().iterator(); i.hasNext();) {
   Object obj = i.next();
   System.out.println(obj);// 循環輸出key
   System.out.println("key=" + obj + " value=" + tempMap.get(obj));
}
4.foreach遍歷
for (Object o :Map.keySet()) {
    System.out.println("key=" + o + " value=" + Map.get(o)); 
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM