# Java 8 Lambda 列表`foreach`

> 原文： [https://javabeginnerstutorial.com/core-java-tutorial/java-8-lambda-foreach-list/](https://javabeginnerstutorial.com/core-java-tutorial/java-8-lambda-foreach-list/)

您一定已经听说过 Java 8 中引入的 Lambda 表达式。很快，我们将介绍有关它的详细主题。 但是现在在本文中，我将展示如何使用 Lambda 表达式来迭代`List`集合。 如果要遍历`Map`，可以查看 [Java 8 lambda 映射`foreach`](https://javabeginnerstutorial.com/core-java-tutorial/java-8-lambda-foreach-map/)文章。

### 清单 1：使用`for`循环进行迭代

```java
class java_forLoop_list {
	public static void main(String[] args) {
		List<String> jbtObjs = new ArrayList<>();
		jbtObjs.add("Java");
		jbtObjs.add("Beginners");
		jbtObjs.add("Tutorial");

		for(int i=0; i<jbtObjs.size();i++){
			System.out.println(jbtObjs.get(i));;
		}
		Iterator i = jbtObjs.iterator();
		while (i.hasNext())
		  {
		    String name = (String) i.next();
		    System.out.println(name);
		  }
	}
}
```

### 清单 2：使用增强的`for`循环（Java 5）进行迭代

```java
class java_5_enhancedForLoop_list {
	public static void main(String[] args) {
		List<String> jbtObjs = new ArrayList<>();
		jbtObjs.add("Java");
		jbtObjs.add("Beginners");
		jbtObjs.add("Tutorial");

		for (String jbtObj : jbtObjs) {
			System.out.println(jbtObj);
		}
	}
}
```

### 清单 3：Java 8 Lambda `forEach`

```java
public class java_8_forEach_list {
	public static void main(String[] args) {
		List<String> jbtObjs = new ArrayList<>();
		jbtObjs.add("Java");
		jbtObjs.add("Beginners");
		jbtObjs.add("Tutorial");

		jbtObjs.forEach(name -> System.out.println(name));
	}
}
```