Stream流的特点_只能用一次-Stream流中的常用方法_map
Stream流的特点_只能用一次
Stream流属于管道流,只能被消费(使用)一次
第一个stream流调用完毕方法,数据就会流转到下一个stream上
而这时第一个stream流已经使用完毕,就会关闭了
所以第一个stream流就不能再调用方法了
/* IllegalStateException: stream has already been operated upon or closed */ //遍历stream流 stream.forEach(name-> System.out.println(name));
Stream流中的常用方法_map
如果需要将流中的元素映射到另一个流中,可以使用map方法。方法签名︰

该接口需要一个Function 函数式接口参数,可以将当前流中的T类型数据转换为另一种R类型的流。

复习Function接口
此前我们已经学习过java.util.stream.Function函数式接口,其中唯一的抽象方法为:
R apply(T t);
这可以将一种T类型转换成为R类型,而这种转换的动作,就称为"映射"。
基本使用
package A_Lian_two.D04; import java.util.stream.Stream; public class Demo04Stream_map { public static void main(String[] args) { //获取一个String类型的Stream流 Stream<String> stream = Stream.of("1", "2", "3", "4"); //使用map方法,把字符串类型的整数,转换(映射)为Integer类型的整数 Stream<Integer> stream2 = stream.map((String s) -> { return Integer.parseInt(s); }); //遍历Stream2流 stream2.forEach(i-> System.out.println(i)); } }

浙公网安备 33010602011771号