我刚开始使用Java Map数据类型,我想知道是否有一种简单的方法可以将所有键值对打印成表格?
例如,假设我想计算字符串中字符的频率并将其存储到地图中。
因此字符串“一直向下流”会导致打印到控制台以下
Character Frequencies
---------------------
' ' 5
'l' 2
't' 3
'h' 2
ECT
根据我的发现,地图上的toString()会返回“{= 5,l = 2,t = 3,h = 2}”的曲调。
哪个好,但是从toString结构构建大表会很慢。除了String操作之外,还有更简洁,更快捷的方法吗?
答案 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
}
当然,您需要进行漂亮的打印。