使用Lambda表达式遍历集合

知识点

Iterable.forEach(Consumer action)是在Java 8中新增的方法,Consumer类型是函数式,所以传参时可以用Lambda表达式,同时Iterable是Collection的父接口,所以Collection及其子实现接口都可以使用此方法。

在使用forEach函数遍历集合元素时,会将元素依次传给Consumer的accept(T t)(该接口中唯一的抽象方法)方法,所以使用此函数可以非常方便的遍历集合元素。

public class CollectionEach {
    public static void main(String[] args) {
        // create collection
        var persons = new HashSet();
        persons.add("Geekmister");
        persons.add("Codeflyer");
        // call forEach
        persons.forEach(obj -> {System.out.println("元素" + obj)});    
        // function body can another write
        persons.forEach(obj -> {System.out.println("元素" + obj)});  
    }
}

扩展知识点

1、什么是Lambda表达式?
Lambda 表达式(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包(注意和数学传统意义上的不同)。

2、什么是Consumer类型?
Java 8 中新增的函数式类型。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。