首页 > 编程笔记 > Java笔记 阅读:7

java map遍历方式(2种,附带实例)

Map 集合的遍历有多种方法,最常用的有两种,本节逐一给大家讲解。

第一种是使用 Map 集合的 keyset() 方法来获取 key 的 Set 集合,然后遍历 Map 集合取得 value 的值。

【实例】使用 keyset 遍历 Map 集合中的元素。
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class MapOutput1 {
    public static void main(String[] args) {
        Map<String, String> all = new HashMap<String, String>();
        all.put("BJ", "BeiJing");
        all.put("NJ", "NanJing");
        all.put(null, "NULL");
        Set<String> set = all.keySet();
        Iterator<String> iter = set.iterator();
        while (iter.hasNext()) {
            String key = iter.next();
            System.out.println(key + " --> " + all.get(key));
        }
    }
}

第二种方式是使用 Map.Entry 来获取 Map 集合中所有的元素。具体步骤:
  1. 将 Map 集合通过 entrySet() 方法变成 Set 集合,里面的每一个元素都是 Map.Entry 的实例;
  2. 利用 Set 集合中提供的 iterator() 方法将 Iterator 接口实例化;
  3. 通过迭代,利用 Map.Entry 接口完成 key 与 value 的分离。

【实例】使用 Map.Entry 遍历 Map 集合中的元素。
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class MapOutput {
    public static void main(String[] args) {
        Map<String, String> all = new HashMap<String, String>();
        all.put("BJ", "BeiJing");
        all.put("NJ", "NanJing");
        all.put(null, "NULL");
        Set<Map.Entry<String, String>> set = all.entrySet();
        Iterator<Map.Entry<String, String>> iter = set.iterator();
        while (iter.hasNext()) {
            Map.Entry<String, String> me = iter.next();
            System.out.println(me.getKey() + " --> " + me.getValue());
        }
    }
}
运行以上两个程序,输出结果相同:

null --> NULL
BJ --> BeiJing
NJ --> NanJing

相关文章