格式化树图的输出

时间:2015-06-26 16:55:18

标签: java arrays dictionary printing output

我有一个TreeMap,在打印时看起来如下所示

private Map<Double, Double> map = new TreeMap<Double, Double>();
System.out.println(map);
output:
{1=2.9, 3=5.4, 5=98.4, 4=90.1, 2=87.7}

我想知道如何打印地图以查找更像

的内容
1 = 2.9
2 = 87.7
3 = 5.4
4 = 90.1
5 = 98.4

现在我能做的就是System.out.println(map);并获得上面显示的输出。

2 个答案:

答案 0 :(得分:1)

您可以自己迭代这些条目:

for (Map.Entry<Double, Double> entry : map.entrySet()) {
    System.out.println(entry.getKey() + " = " + entry.getValue());
}

如果您使用的是Java 8,则可以使用lambda:

map.entrySet().forEach(e -> System.out.println(e.getKey() + " = " + e.getValue()));
map.forEach((k, v) -> System.out.println(k + " = " + v));

答案 1 :(得分:1)

Set treeSet = tmap.entrySet();
Iterator iterator = treeSet.iterator();

 while(iterator.hasNext()) {
     Map.Entry integer = (Map.Entry)iterator.next();
     System.out.print(integer.getKey() + ": ");
     System.out.println(integer.getValue());
 }

使用Java SetIterator。确保包含以下导入:

import java.util.Iterator;
import java.util.Map;
import java.util.Set;