我有这样的方法:
public static void main(String[] args) {
Map<String, Long> var = Files.walk(Paths.get("text"), number)
.filter(path -> !Files.isDirectory(path))
.map(Path::getFileName)
.map(Object::toString)
.filter(fileName -> fileName.contains("."))
.map(fileName -> fileName.substring(fileName.lastIndexOf(".") + 1))
.collect(Collectors.groupingBy(
extension -> extension,
Collectors.counting()
)
);
System.out.println(var);
}
众所周知,输出将如下:
{text=1, text=2}
是否可以将输出更改为:
text = 1
text = 2
我希望有更多的自由,e。 G。删除括号和逗号,在数字后添加新行等。
答案 0 :(得分:1)
您可以迭代地图的结果,然后将其打印出来:
for (Map.Entry<String, Long> entry : var.entrySet())
{
System.out.println(entry.getKey() + " = " + entry.getValue());
}
然后,如果您想要更多控制,您可以修改线条的打印方式,因为您有原始键和值对象。
答案 1 :(得分:0)
如此简单的事情:
map.toString().replace(", ", "\n");