java Stream-终结操作 forEach 作者:马育民 • 2023-04-07 20:09 • 阅读:10161 # 介绍 用于迭代流中的每个数据(相当于 `for` 循环,循环每一个数据),该方法不会返回 `Stream` 对象,所以是 **终结操作** 在 `forEach()` 方法中,可传入 `Consumer` 对象,或者 lambda表达式 # 例子:打印每一个元素 ### 传入lambda表达式 ``` List list = new ArrayList<>(); Collections.addAll(list,"李雷", "韩梅梅", "lucy", "lisi","李小四"); list.stream() .forEach(item -> System.out.println(item)); ``` ### 传入Consumer对象 循环打印流中的每一个数据 ``` List list = new ArrayList<>(); Collections.addAll(list,"李雷", "韩梅梅", "lucy", "lisi","李小四"); list.stream() .forEach(new Consumer() { @Override public void accept(String item) { System.out.println(item); } }); ``` # 例子:将数组中的元素拼装成字符串,用,号分割 ``` String[] arr = ["李雷", "韩梅梅", "lucy", "lisi","李小四"]; StringBuilder str = new StringBuilder(); Arrays.stream(arr).forEach(e -> str.append(e + ",")); ``` 原文出处:http://malaoshi.top/show_1IX5HAJFml69.html