常见数据结构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