Java 8于2014年3月18日发布,在阅读相关文章后,在本教程中,我们将通过示例研究 Java 8功能。
一、Java 8 的新特性
- Iterable 接口中的 forEach()方法
- 接口中允许有默认方法和静态方法
- 函数式接口与 Lambda 表达式
- 用于集合上批量数据操作的 Java Stream API
- 新的时间 API
- 集合 API 的改进
- 并发 API 的改进
- Java IO 的改进
- 其他核心 API 的改进
以上是 Java 8 的新特性的列举,接下来展示一些代码片段,来更好理解这些新特性
二、新特性应用
2.1、Iterable 接口中的 forEach()方法
package com.taotao.springboot;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.function.Consumer;
public class IterableForEachExample {
public static void main(String[] args) {
List<Integer> ints = new ArrayList<>();
for (int i = 0; i < 10; i++) ints.add(i);
//迭代器遍历
Iterator<Integer> iterator = ints.iterator();
while (iterator.hasNext()) {
Integer i = iterator.next();
System.out.println("Iterator Value::" + i);
}
//使用forEach方法遍历,这里使用了匿名内部类
ints.forEach(new Consumer<Integer>() {
public void accept(Integer t) {
System.out.println("forEach anonymous class Value::" + t);
}
});
//通过实现Consumer接口的子类遍历,业务处理从遍历逻辑中抽取出来
MyConsumer action = new MyConsumer();
ints.