有效的方式将Java Map的条目打印为表格?

时间:2011-11-24 04:36:27

标签: java dictionary hashmap treemap

我刚开始使用Java Map数据类型,我想知道是否有一种简单的方法可以将所有键值对打印成表格?

例如,假设我想计算字符串中字符的频率并将其存储到地图中。

因此字符串“一直向下流”会导致打印到控制台以下

Character Frequencies
---------------------
' '        5
'l'        2
't'        3
'h'        2

ECT

根据我的发现,地图上的toString()会返回“{= 5,l = 2,t = 3,h = 2}”的曲调。

哪个好,但是从toString结构构建大表会很慢。除了String操作之外,还有更简洁,更快捷的方法吗?

1 个答案:

答案 0 :(得分:3)

假设您的地图键值对是String-Integer类型,您可以使用以下方法迭代Map:

for (Map.Entry<String, Integer> entry : theMap.entrySet()) {
    entry.getKey(); // gives you the 'Character' key
    entry.getValue(); // gives you the 'Frequencies' value
}

当然,您需要进行漂亮的打印。