常见数据结构Map的特点及常用方法

一、图的结构:
  • Map
    • HasMap
    • LinkedHashMap
    • TreeMap
 
二、Map
 
Map特点:
1.不能包含重复的键; 每个键可以映射到最多一个值;
2.可以不同键指向同一Value;
3.支持用户自由绑定Key值与Value;
4.,可以直接访问Key值获得对应Value;
 
声明代码:
1 Map map=new HashMap();

 

 
常用方法:
 
常用实现类:
HashMap、LinkedHashMap、TreeMap
 
三、HashMap
 
HasMap特点:
1.键值必须唯一,不允许存在重复键值
2.HashMap中条目是没有顺序的,无法以输入顺序输出
 
申明代码:
Map map=new HashMap();
HashMap map=new HashMap();

 

 
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 map=new LinkedHasMap();
2 LinkedHasMap map=new  LinkedHasMap();

 

 
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 map=new TreeMap();
TreeMap map=new TreeMap();
 
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 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)); 
}

 

你可能感兴趣的:(常见数据结构Map的特点及常用方法)