一、Map获取key
Map是Java中常用的一种数据结构,它用来存储一组键值对,实现了将key映射到value的对应关系。获取Map中的key可以通过以下方法:
1、通过keySet()方法获取key的集合,然后遍历集合取出每个key的值。
Mapmap = new HashMap<>(); map.put("name","张三"); map.put("age","18"); Set keySet = map.keySet(); for (String key : keySet) { System.out.println(key); }
2、通过entrySet()方法获取键值对的集合,然后遍历集合取出每个键值对中的key。
Mapmap = new HashMap<>(); map.put("name","张三"); map.put("age","18"); Set > entrySet = map.entrySet(); for (Map.Entry entry : entrySet) { System.out.println(entry.getKey()); }
3、通过迭代器获取key。
Mapmap = new HashMap<>(); map.put("name","张三"); map.put("age","18"); Iterator iterator = map.keySet().iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); }
二、Map获取value
获取Map中的value可以通过以下方法:
1、通过values()方法获取所有的value,然后遍历集合取出每个value的值。
Mapmap = new HashMap<>(); map.put("name","张三"); map.put("age","18"); Collection values = map.values(); for (String value : values) { System.out.println(value); }
2、通过entrySet()方法获取键值对的集合,然后遍历集合取出每个键值对中的value。
Mapmap = new HashMap<>(); map.put("name","张三"); map.put("age","18"); Set > entrySet = map.entrySet(); for (Map.Entry entry : entrySet) { System.out.println(entry.getValue()); }
3、通过迭代器获取value。
Mapmap = new HashMap<>(); map.put("name","张三"); map.put("age","18"); Iterator iterator = map.values().iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); }
三、小结
通过以上三种方式,可以很方便地获取Map中的key和value。需要注意的是,当Map中存在重复的key时,获取到的value只会返回最后一个key对应的value。