2017-05-24 35 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 –