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,因此可以从中分别获取键和值: 从 从
提示的可能重复:泛型会让这件事变得不那么痛苦,也更加不言而喻。提示:泛型会让这件事变得不那么痛苦,也更加不言而喻。