【发布时间】:2020-10-26 14:23:30
【问题描述】:
假设我们有一个键和值的 HashMap,其中键是整数,值是列表,然后我使用 hashMap 构造一个 treeMap 以将其排序:
Map<Integer, List<Boolean>> map = new HashMap<>();
Map<Integer, List<Boolean>> orderedMap = new TreeMap<>(map);
如果我这样做
map.entrySet().forEach(entry -> System.out.println(entry.getKey() + ": " + entry.getValue())
它在每一行之后吐出每个键及其值。这是我要做的事情,但我认为打印出某些行 x 列更容易。也许可能在移动到下一个之前每行打印 10 个键:值,或者最好在第一列中按顺序打印出 10 个键:值,然后下一列打印下一个 10,依此类推,直到它到达末尾(最后一列不必正好是 10),但我不知道如何达到这个目标
想要的样本输出:
entry1 entry11 ...
entry2 entry12
entry3 entry13
entry4 entry14
entry5 entry15
entry6 .
entry7 .
... .
entry10 entry20
【问题讨论】:
-
地图中的每个条目将在地图值列表中具有完全相同数量的元素 -
List<Boolean>?此外,如果您还可以提及您正在考虑的示例输出,那就太好了。 -
是的,每个 entry.getValue() 将在 List
中具有相同数量的元素 -
这里
entry1、entry2等是java.util.Map.Entry实例? -
entry1 只是我说 key1 = value1 其中 key = Integer 和 value = list
的一种方式 -
打印输入顺序重要吗?
HashMap不保留任何顺序。
标签: java java-8 hashmap pretty-print