Lambda表达式是一种在JDK8中引入的函数式编程语法,用于简化代码中的匿名内部类的使用。它可以在不需要实现某个接口的情况下,直接创建出一个函数式接口的实例。
(parameter) -> expression
(parameter) -> { statements; }
Lambda表达式被广泛应用在集合框架中,用于遍历、过滤和映射集合中的元素。这里有两个示例说明:
List<String> list = Arrays.asList("Java", "Python", "Ruby", "C#", "JavaScript");
list.forEach(lang -> System.out.println(lang));
上述代码使用了Lambda表达式遍历List集合中的元素,代码中 ->
两边的部分就是Lambda表达式的参数和实现,其中 lang
表示遍历过程中当前元素的名称,System.out.println(lang)
是Lambda表达式的实现部分,该代码将语言名称打印在控制台上。
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
list.stream().filter(num -> num % 2 == 0).forEach(System.out::println);
上述代码使用了Lambda表达式过滤出当前List集合中的偶数元素,list.stream()
是将List转化为Stream的操作,.filter
是过滤操作,这里的 num -> num % 2 == 0
表示过滤得到其中的偶数元素,最后通过 .forEach
将满足条件的元素直接输出到控制台上。
Lambda表达式在Java8中具有重要的应用价值,其简洁的语法和强大的功能可以极大的提升代码的可读性和可维护性。通过合理地运用Lambda表达式,可以优化代码的执行效率,提高程序的整体性能。