🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Java 8 Lambda 映射`foreach` > 原文: [https://javabeginnerstutorial.com/core-java-tutorial/java-8-lambda-foreach-map/](https://javabeginnerstutorial.com/core-java-tutorial/java-8-lambda-foreach-map/) 您一定已经听说过 Java 8 中引入的 Lambda 表达式。很快,我们将介绍有关它的详细主题。 但是现在在本文中,我将展示如何使用 Lambda 表达式来迭代集合。 ### 在 Java 8 之前 ```java class java_5_enhancedForLoop_Map { public static void main(String[] args) { Map<String, String> jbtObj = new HashMap<String, String>(); jbtObj.put("Website Name","Java Beginners Tutorial"); jbtObj.put("Language", "Java"); jbtObj.put("Topic", "Collection"); for (Map.Entry<String, String> entry : jbtObj.entrySet()) { System.out.println(entry.getKey() + " : "+ entry.getValue()); } // Iterating over collection object using iteration even before Java 5 Iterator<Entry<String, String>> iterator = jbtObj.entrySet().iterator(); while (iterator.hasNext()) { Entry<String, String> thisEntry = (Entry<String, String>) iterator.next(); Object key = thisEntry.getKey(); Object value = thisEntry.getValue(); System.out.println(key+" : "+value); } } } ``` ### 在 Java 8 之后使用 Lambda 表达式 ```java public class java_8_forEach_Map { public static void main(String[] args) { Map<String, String> jbtObj = new HashMap<String, String>(); jbtObj.put("Website Name","Java Beginners Tutorial"); jbtObj.put("Language", "Java"); jbtObj.put("Topic", "Collection"); jbtObj.forEach((key,value) -> System.out.println(key+" :"+value)); } } ``` 如您所见,通过单行代码,我们可以遍历`Map`。 同样,我们可以使用 Lambda 中引入的过滤器过滤出结果。