Map
Map的遍历
- 遍历:
- 不能直接遍历,只能先转成单列集合,遍历单列集合
- 两种思路:
- 获取到Map中所有的键,更具建获取值
- 通过迭代器(更具建获取值)
- Set keySet()
返回此映射中包含的键的 Set 集合。
set存储了所有的键,能使用Set集合的所有方法
- Set keySet()
- 通过迭代器(更具建获取值)
- 获取到Map中所有的键,更具建获取值
Set<String> set = map.keySet();
//获取迭代器
Iterator<String> it = set.iterator();
while(it.hasNext()) {
String key = it.next();
int vlaue = map.get(key);
System.out.println(key + "..." + vlaue);
}
- 通过增强for
Set<String> set = map.keySet();
for (String key : set) {
System.out.println(key + ".." + map.get(key));
}
- 获取所有的Map键值对对象,在获取对象中的键和值
- 键值对对象:
- 就是一堆对应的键和值,形成的Map中的一条记录
- 本对象至少有两个属性:键和值,提供获取键和获取值得get方法
- Entry: 条目、词条
- java的键值对队形
- Entry:是接口
- 位置:Map的内部接口
- 功能:getKey(); getValue();setValue()
- Set<Map.Entry<K,V>> entrySet()
返回此映射中包含的映射关系的 Set 视图。 获取键值对对象的Set集合。- 键值对对象的泛型为Map.Entry
- 遍历:
- 迭代器:
Set<Map.Entry<String, Integer>> entrys = map.entrySet();
Iterator<Map.Entry<String, Integer>> iterator = entrys.iterator();
while(iterator.hasNext()) {
Map.Entry<String, Integer> en = iterator.next();
System.out.println(en.getKey()+"..." + en.getValue());
}
- 增强for
Set<Map.Entry<String, Integer>> entrys = map.entrySet();
for (Map.Entry<String, Integer> entry : entrys) {
System.out.println(entry.getKey() + ".." + entry.getValue());
}