- import java.util.HashMap;
- import java.util.Iterator;
- import java.util.Map;
- import java.util.Set;
- //map集合的两种取出方式
- public class MapDemo2 {
- /**
- * @param args
- */
- public static void main(String[] args) {
- Map<String, String> map = new HashMap<String, String>();
-
- map.put("01", "张三");
- map.put("02", "李四");
- map.put("03", "王五");
- map.put("04", "关羽");
-
- //将Map集合中的映射关系取出,存入到set集合中
- // Set<Map.Entry<String, String>> entrySet = map.entrySet();
- //
- // Iterator<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+"---"+value);
- // }
-
- Set<String> keySet = map.keySet();
-
- Iterator<String> it = keySet.iterator();
-
- while(it.hasNext()){
- String key = it.next();
- String value = map.get(key);
- System.out.println(key+"---"+value);
- }
-
- }
- }
复制代码 一种是Set<k> keySet 方式,另一种是注释掉的Set<Map.Entry<k,v>> entrySet方式
我知道Set<Map.Entry<k,v>>这个方式是将map集合中的映射关系存入到了set集合中。但以上程序两种方式所得结果一样,我就不知道,什么时候该用Set<k> keySet 方式,什么时候该用Set<Map.Entry<k,v>> entrySet方式??? |