4.常见终结操作方法

package com.zxr.stream;

import java.util.ArrayList;
import java.util.function.Consumer;

public class Test04 {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("张三丰");
        list.add("张翠山");
        list.add("王二麻子");
        list.add("张飞");
        list.add("谢广坤");
//        void forEach(Consumer action):对此流的每个元素执行操作
//        解释:Consumer接口中的方法    void accept(Tt):对给定的参数执行此操作
        /*
        * 在forEach方法的底层,会循环获取到流中的每一个数据,
        * 并循环调用accept方法,并把每一个数据传递给accept方法
        * s就依次表示了流中的每一个数据,所以,
        * 我们只要在accept方法中,写上处理的业务逻辑就可以了
        * */
        list.stream().forEach(new Consumer<String>() {
            @Override
            public void accept(String s) {
                System.out.println(s);
            }
        });
//        因为Consumer接口中只有一个accept方法,所以可以用lambda表达式的简化写法
list.stream().forEach((String s)->{
    System.out.println(s);
});
//lambda还可以进一步简化
        list.stream().forEach(s -> System.out.println(s));
        
//        long  count():返回此流中的元素数

        long count = list.stream().count();
        System.out.println(count);
    }
}
posted @ 2024-03-25 10:43  冷风5997  阅读(2)  评论(0编辑  收藏  举报