Java中的漂亮打印HashSet

时间:2016-07-29 16:36:09

标签: java jackson hashset

我可以找到更接近这个的问题,但不完全是我想要的。对于许多专家来说,问题可能非常简单:我有一个Hashset包含我的自定义bean作为其内容:

Set<TableColumnBean> mySet = new HashSet<TableColumnBean>();
//loop and add values to Hashset
for(String str : tableColumnBeanMap.keySet()){
    mySet.add(new TableColumnBean(tableColumnBeanMap.get(str).getTable, `tableColumnBeanMap.get(str).getColumn))`
}

这里tableColumnBeanMap是一个Map,其中包含TableColumnBean类型的bean列表。 TableColumnBean是一个简单的bean,它有两个属性table和column。在循环结束时,我想要打印set的内容,这对于保留作为调试日志选项很有用。我可以想到使用java for循环和prinitng内容循环遍历集合。但在其他地方,我使用Jackson库,如:

new ObjectMapper().writeWithDefaultPrettyPrinter().writeValueAsString(myMap)

在地图上非常有效。我们有类似的东西也适用于套装吗? (杰克逊的漂亮印刷品之类的衬垫会很好 - 因为它可以很好地读取输出格式,也不会使你的代码混乱)。

1 个答案:

答案 0 :(得分:2)

使用Arrays

import java.util.*;

Arrays.toString(mySet.toArray())

根据mySet的元素创建一个字符串。