Stream 流

Stream 流

  • 类似于生活中的生产流水线;

  • 专门负责加工数据的;

  • 特点:

    1. 只有容器能够获取流对象;
    2. 流只负责处理数据,不负责存储数据;
    3. 每条流,只能使用一次,是一次性的;
    4. 只能往前走,不能回退;
  • 获取流的方式:

    • 单列集合:

      • Stream list_stream = list.stream();
      • Stream set_stream = set.stream();
    • 双列集合:

      • Stream set_stream = map.keySet().stream();
      • Stream entry_stream = map.entrySet().stream();
    • 数组:

      • Stream s = Stream.of(1,2,3,4);
      • Stream stream = Arrays.stream(arr);
    • 常用方法:

      • Stream filter(Predicate pre) 过滤方法,满足条件就放入流中,否则新流中一条数据没有
      • Stream limit(int len) 截取指定的元素个数
      • Stream skip(int len) 跳过指定的元素个数
      • Stream concat(Stream s1,Stream s2); 将两个流拼接成一个新流
      • Stream distinct(); 将流中的数据去重 (hashCode + equals)
      • Stream map(Function<T,R> fun) 将集合中的元素,从T类型,转成R类型;
      • IntStream mapToInt(Function<T,R> fun); 同上,只不过IntStream比Stream多了一些操作基本类型的方法
      • void foreach(Consumer con); 遍历
      • int count(); 统计长度
      • Collect(Collector c) 将流中处理好的数据,收集到指定的容器中
        • Collectors.toList(); List集合
        • Collectors.toSet(); Set集合
        • Collectors.toMap(key,value); 将容器中的元素收集成Map集合
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值