Map集合

  • 格式:docx
  • 大小:15.55 KB
  • 文档页数:3

Map集合:该集合存储键值对,一对一对往里存,而且要保证键的唯一性。

1、添加
put(K key, V value)
putAll(Map<? Extends K,? extends V > m)
2、删除
clear()
remove(Object key)
3、判断
containsValue(Object value)
containsKey(Object key)
isEmpty()
4、获取
get(Object key)
size()
values()
entrySet():返回Set<Map.Entry<k,v>> entrySet,将map集合中的映射关系存入到了set 集合中,而这个关系的数据类型就是:Map.Entry
Map<String,String> map = new HashMap<String,String>;
//将map中的映射关系取出,存入到set集合中
Set<Map.Entry<String,String>> entrySet = map.entrySet();
Iteartor<Map.Entry<String,String>> it = entrySet.iterator();
While(it.hasNext()){
Map.Entry<String,String> me = it.next();
String key = me.getKey();
String value = me.getValue();
System.out.println(“key:”+key,”value:”+value);
}
其实Map.Entry 也是一个接口,他是Map接口中的一个内部接口
keysSet():将Map中所有的键存入到Set集合中,因为Set具备迭代器。

所有可以迭代方式取出所有的键,再根据get方法,获取每一个键对应的值。

Map<String,String> map = new HashMap<String,String>;
map.put(“01”,”a1”);
map.put(“02”,”a2”);
map.put(“03”,”a3”);
//先获取map集合的所有键的Set集合,keySet();
Set<String> keyset = map.keySet();
//有了Set集合,就可以获取其迭代器。

Iterator<String> it = keyset.iterator();
While(it.hasNext()){
String key = it.next();
//有了键可以通过map集合的get方法获取其对应的值
String value = map.get(key);
System.out.println(“key:”+key,”value:”+value);
}
Map扩展
Map集合被使用是因为具备映射关系,
一对多
HashMap<String,String> yure = new HashMap<String,String>;
yure.put(“01”,”a1”);
yure.put(“02”,”a2”);
HashMap<String,String> jiuye = new HashMap<String,String>;
jiuye.put(“01”,”b1”);
jiuye.put(“02”,”b2”);
HashMap<String,HashMap<String,String>> yll = new HashMap<String,HashMap<String,String>>;
yll.put(“yureban”,yure);
yll.put(“jiuyeban”,jiuye);
getStudentInfo(yure);
getStudentInfo(jiuye);
//遍历yll集合,获取所有教室
Iterator<String> it = yll.keySet().iterator();
while(it.hasNext()){
String roomName = it.next();
HashMap<String,String> room = yll.get(roomName);
System.out.println(roomName);
getStudentInfo(room);
}
public static void getStudentInfo(HashMap<String,String> roomMap){ Iterator<String> it = roomMap.keySet().iterator();
while(it.hasNext()){
String id = it.next();
String name = roomMap.get(id);
System.out.println(id+”:”+name);
}
}。