📜  Java程序将地图(HashMap)转换为列表(1)

📅  最后修改于: 2023-12-03 15:32:05.227000             🧑  作者: Mango

Java程序将地图(HashMap)转换为列表

在 Java 中,HashMap 是一种非常常用的映射结构,可以将键值对存储在其中。但是,在某些情况下,需要将 HashMap 转换为 List,以便更容易地对其进行迭代。下面是一段 Java 程序,演示了如何将 HashMap 转换为 List。

代码实现
import java.util.*;

public class HashMapToList {
    public static void main(String[] args) {
        // 创建一个 HashMap
        HashMap<String, String> hashMap = new HashMap<>();

        // 添加键值对
        hashMap.put("1", "Java");
        hashMap.put("2", "Python");
        hashMap.put("3", "Ruby");

        // 将 HashMap 转换为 List
        List<Map.Entry<String, String>> list = new ArrayList<>(hashMap.entrySet());

        // 遍历列表并打印输出
        for (Map.Entry<String, String> entry : list) {
            System.out.println(entry.getKey() + " - " + entry.getValue());
        }
    }
}
代码解释

首先,创建一个 HashMap 对象,并添加一些键值对。

HashMap<String, String> hashMap = new HashMap<>();
hashMap.put("1", "Java");
hashMap.put("2", "Python");
hashMap.put("3", "Ruby");

接下来,使用 entrySet() 方法将 HashMap 转换为 Set 类型的键值对集合,并将其传递给 ArrayList 构造函数,以便创建一个包含所有元素的新列表。

List<Map.Entry<String, String>> list = new ArrayList<>(hashMap.entrySet());

最后,使用简单的 for 循环遍历列表,并打印出每个键值对的 key 和 value。

for (Map.Entry<String, String> entry : list) {
    System.out.println(entry.getKey() + " - " + entry.getValue());
}
结果

当您运行上面的程序时,将输出以下结果:

1 - Java
2 - Python
3 - Ruby
结论

在 Java 中,将 HashMap 转换为 List 对于许多开发人员可能是一个常见的任务。通过使用 entrySet() 方法获得键值对集合,并将其传递给 ArrayList 构造函数,可以轻松地转换 HashMap 为 List。