Java 映射的HashSet输出

Java 映射的HashSet输出,java,Java,我有映射,带有字符串键和哈希集值: Set<String> values = new HashSet<String>(); values.add("values1"); values.add("values2"); Map<String, Set> maps = new HashMap<String, Set>(); maps.put("TestKey", values); 但我得到了: key [values, ​​values] 在此推导出

我有
映射
,带有
字符串
键和
哈希集
值:

Set<String> values = new HashSet<String>();
values.add("values1");
values.add("values2");
Map<String, Set> maps = new HashMap<String, Set>();
maps.put("TestKey", values);
但我得到了:

key [values, ​​values]
在此推导出元素I,以便:

for(Entry<String, Set> e : maps.entrySet()) {
   System.out.println(e.getKey() + " " + e.getValue());
}
for(条目e:maps.entrySet()){
System.out.println(e.getKey()+“”+e.getValue());
}
请帮我修复输出

UPD

如果我想把这些都写在文件里,我该怎么办?在一行中使用相同的格式

此选项不起作用:

FileWriter wr = null;
        PrintWriter pw;
        try {
            wr = new FileWriter(file.getAbsoluteFile(), true);
            pw = new PrintWriter(wr);

        for(Entry<String, Set<String>> e : my.entrySet()) {
               pw.print(e.getKey());
               for(String s: e.getValue()) pw.print(" " + s);
               pw.println();
            }
        } catch (IOException e1) {
            e1.printStackTrace();
        }
FileWriter wr=null;
印刷作家;
试一试{
wr=新的FileWriter(file.getAbsoluteFile(),true);
pw=新的打印机(wr);
对于(条目e:my.entrySet()){
打印(如getKey());
对于(字符串s:e.getValue())pw.print(“+s”);
println();
}
}捕获(IOE1异常){
e1.printStackTrace();
}
我尝试将所有数据以

key values ​​values ​​//in one line
关键值​​价值观​​(一行)

这意味着您必须使用此格式

Map<String, Set<String>> maps = ...

for(Entry<String, Set<String>> e : maps.entrySet()) {
   System.out.print(e.getKey());
   for(String s: e.getValue()) System.out.print(" " + s);
   System.out.println();
}
Map映射=。。。
对于(条目e:maps.entrySet()){
System.out.print(e.getKey());
对于(字符串s:e.getValue())System.out.print(“+s”);
System.out.println();
}

为什么不迭代
e.getValue()
并按您的喜好打印每个条目?您在正常输出中得到了什么。