Stream流中的常用方法_map 和Stream流中的count方法
映射:map:
如果需要将流中的元素映射到另一个流中,可以使用map方法
<R> Stream<R> map(Function<? super T,? extends R> mapper);
该接口需要一个Function函数式接口参数,可以将当前流中的T类型数据转换为另一种R类型的流
示列:
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(s -> Integer.parseInt(s)); //遍历stream2流 stream2.forEach(i-> System.out.println(i)); } }
统计个数:count
正如旧集合Collection 当中的size 方法一样,流提供count 方法来数一数其中的元素个数:
long count();
该方法返回一个long值代表元素个数(不再像旧集合那样是int值)
基本使用:
/** * Stream流中的常用方法_count:用于统计Stream流中元素的个数 * long count(); * count方法是一个终结方法,返回值是一个long类型的整数 * 所以不能再继续调用Stream流中的其他方法了 */ public class Demo05Stream_count { public static void main(String[] args) { //获取一个Stream流 ArrayList<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(3); list.add(4); list.add(5); Stream<Integer> stream = list.stream(); long count = stream.count(); System.out.println(count); } }