- 默认方法。一个在接口里面有了一个实现的方法。只需在方法名前面加个 default 关键字即可实现默认方法。
- lambda表达式。Lambda 允许把函数作为一个方法的参数传递进方法中。它实际上是个匿名函数。
- 方法引用。java8 允许使用 :: 关键字来传递方法或者构造函数引用。
- 函数式接口。一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。可以使用 lambda 表达式作为接口中唯一一个抽象方法的具体实现。
@FunctionalInterface
interface Converter<F, T>{
T convert(F from);
}
Converter<String, Interage> converter = (from)->Interage.valueOf(from);
Interage res = converter.convert("123");
System.out.println(res);
- 访问局部变量。可以直接在lambda表达式中访问外层的局部变量。
- hashMap中添加了红黑树的结构,在冲突较多的情况下提高了查询速度。