java - 如何遍历 LinkedHashMap 并分别在键和值之间进行选择?

标签 java iterator hashmap key

目前我有这个:

try{
            // Create file 
            FileWriter fstream = new FileWriter("output");
            BufferedWriter out = new BufferedWriter(fstream);
            Iterator mapIt = assignments.entrySet().iterator();
            while (mapIt.hasNext()){
                out.write(mapIt.next().toString()+";\n");
            }
            //Close the output stream
            out.close();
        }

问题是,我不能只使用迭代器的 toString(),我需要分别取出键和值,这样我就可以在输出文件中将它们之间放一些东西。有谁知道我该怎么做?

最佳答案

您会注意到迭代器返回一个 Map.Entry它有 getKeygetValue 方法。

使用它们来获取相应的项目....类似

while (mapIt.hasNext()){
   Map.Entry entry = mapIt.next();
   Object key = entry.getKey();
   Object value = entry.getValue();
   // format away..
}

请注意,我将 Object 作为键和值的类型,但您应该根据您定义 Map 的方式指定类型。

关于java - 如何遍历 LinkedHashMap 并分别在键和值之间进行选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9332206/

相关文章:

java - 进程意外退出:构建失败,出现异常

c++ - 如何在 C++ 中递减迭代器?

scala - 在函数调用的值上创建一个迭代器

java - HashMap,其中键的顺序很重要

java - 在 Java 中使用具有枚举类型的元组作为 HashMap 的键

具有通用版本 8 和 17 的 Java 实例类型

java - jcombobox 与 jbutton 一起使用

c++ - 增加一个常量前向迭代器

c++ - 创建字符串到函数 vector 的 HashMap

java - 每隔几秒更新一次 android studio 中的 gps 位置