KetSet:集合遍历之根据键找值- package cn.itcast.map;
- import java.util.HashMap;
- import java.util.Map;
- import java.util.Set;
- //Map集合的遍历之键找值
- //分析:
- //1.使用Map.keySet方法得到所有的Set(所有的key)
- //2.遍历Set,就得到了每一个Key,在根据map.get(key),获取key对应的value.
- public class MapDemo4 {
- public static void main(String[] args) {
- //1.定义Map集合,装入数据
- Map<String, String> map = new HashMap<String, String>();
- map.put("one", "aaa");
- map.put("two", "bbb");
- map.put("3", "ccc");
- //2.得到所有的key
- Set<String> keys=map.keySet();
-
- //3.遍历keys这个Set集合,就得到了Map集合中所有的key
- for(String key:keys){
- //4.根据key获取对应的value.
- System.out.println("key:"+key+" value:"+map.get(key));
- }
- }
- }
复制代码 EntrySet:集合的遍历之键值对对象找键和值- package cn.itcast.map;
- import java.util.HashMap;
- import java.util.Map;
- import java.util.Set;
- //关于Map集合中的entrySet方法;
- import static java.util.Map.*;
- public class MapDemo5 {
- public static void main(String[] args) {
- // 1.定义Map集合,装入数据
- Map<String, String> map = new HashMap<String, String>();
- map.put("one", "aaa");
- map.put("two", "bbb");
- map.put("3", "ccc");
- // 2.调用map集合的entrySet方法
- Set<Entry<String, String>> set = map.entrySet();
- // entrySet方法返回的是一个Set集合,而集合中的对象是Map.Entry类型,对于Entry,我们可以使用泛型来规范它,它的泛型就是Map集合的泛型
- for (Entry<String, String> en : set) { // 从Set集合中遍历出来的就是Map.Entry类型对象
- System.out.println(en.getKey() + " " + en.getValue()); // 可以通过Map.Entry的getKey,getValue,获取对应的key与value.
- }
- }
- }
- /*
- * Set<Map.Entry<K, V>> entrySet(); entrySet方法的返回值是Set集合,集合中的元素是 Map.Entry
- *
- * 通过查找源代码发现 Entry是一个接口,而这个接口是定义在Map接口中。
- */
复制代码
图解
|
|