当前位置: 代码迷 >> Java相关 >> Map三种遍历模式
  详细解决方案

Map三种遍历模式

热度:10   发布时间:2016-04-22 19:32:54.0
Map三种遍历方式

Map三种遍历方式

package decorator; import java.util.Collection; import java.util.HashMap;  import java.util.Map;  import java.util.Map.Entry;  import java.util.Set;  import org.junit.Before;  import org.junit.Test;  /** * 对于Map的三种方式遍历 1.keySet() 2.values() 3.entrySet()  * 三种方式得到Set之后,都可以使用 foreach或者iterator, 不能使用for,因为数据结构决定的  *  * @author Administrator  *  */ public class MapCycle {            Map<Integer, String> map;                       // 准备好数据                      @Before                       public void testData() {                                 map = new HashMap<>();                                map.put(1, "凌一");                                map.put(2, "凌二");           map.put(3, "凌三");                                map.put(4, "凌四");                                map.put(5, "凌五");           }/** 测试三种方式,这三种方式最后都是遍历Set,于是都可以使用 foreach或者Iterator **/              // 方式1: keySet()方法获取到Set(key)                         @Test                          public void testFirst() {                                  Set<Integer> set = map.keySet();                                  for (Integer integer : set) {                                            System. out.println( map.get(integer));                                    }                        }              // 方式2:values()方法获取到Collection(value)                          @Test                           public void testSecond() {                                   Collection<String> collection = map.values();                                   for (String string : collection) {                                            System. out.println(string);                                    }                        }                           // 方式3:entrySet()方法获取到Set<Entry<key,value>>                          @Test               public void testThird() {                                    Set<Entry<Integer, String>> entries = map.entrySet();                                    for (Entry<Integer, String> entry : entries) {                                             System. out.println(entry.getValue());                                            }                               }                }

 

 
  相关解决方案