2017-05-24 34 views

回答

2

使用entrySet()(或values()如果这就是你所需要的),而不是keySet()

Map<String, Double> missions = new HashMap<>(); 
missions.put("name", 1.0); 
missions.put("name1", 2.0); 
missions.entrySet().stream().forEach(e-> System.out.println(e)); 
+1

您可以直接传递方法引用,而不是创建lambda:'forEach(System.out :: println)'。然而,这只是一个风格问题。 – beatngu13

+1

是的,但在这种情况下,我不确定OP要的是值还是条目 - 如果是后者,那么lambda将是更好的选择(因为您可能想从“Entry”获取键或值)。 – syntagma

+0

ty,你怎么记得stream api的逗号这么好,我似乎无法得到它使用的方法背后的逻辑,就像学习一个新的languege lol –