Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何迭代LinkedHashMap并分别在键和值之间进行选择?_Java_Iterator_Hashmap_Key - Fatal编程技术网

Java 如何迭代LinkedHashMap并分别在键和值之间进行选择?

Java 如何迭代LinkedHashMap并分别在键和值之间进行选择?,java,iterator,hashmap,key,Java,Iterator,Hashmap,Key,目前,我有以下几点: try{ // Create file FileWriter fstream = new FileWriter("output"); BufferedWriter out = new BufferedWriter(fstream); Iterator mapIt = assignments.entrySet().iterator(); while (ma

目前,我有以下几点:

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,我需要分别取出键和值,这样我就可以在outputfile中把它们之间的内容放在一起。有人知道我是怎么做到的吗

您会注意到迭代器返回一个包含getKey和getValue方法的

使用这些来获取相应的项目…类似于

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

注意,我将Object作为key和val的类型,但是您应该根据定义映射的方式来指定类型。

您会注意到迭代器返回一个包含getKey和getValue方法的

使用这些来获取相应的项目…类似于

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

注意:我将Object作为key和val的类型,但您应该根据定义映射的方式指定类型。

因为迭代器返回一组映射。Entry,您可以从中分别获取key和value:


由于迭代器返回一组Map.Entry,因此可以从中分别获取键和值:


提示的可能重复:泛型会让这件事变得不那么痛苦,也更加不言而喻。提示:泛型会让这件事变得不那么痛苦,也更加不言而喻。