stream流

Stream

 1 获取Stream流

  使用Collection中的stream()生成流   如list(集合对象).stream()

  双列集合间接获取  先通过 keySet或者 entrySet 获取set 在获取stream流

  数组       通过数组的帮助类 Arrys.stream(数组名)

  相同数据类型的多个元素  通过Stream类 中的 of()方法   stream.of()

2 中间方法

   forEach () 自动遍历流对象中的数据。将每一个数据一次传递给lambda表达式

                 方法的参数: Consumer 接口, 抽象方法 void accept(T t)

filter方法(对stream中的元素进行筛选,返回新的的stream对象)获取流中的每一个数据。test 方法中的s,依此便是流中的每一个数据

     是就返回true留下。

 stream().filter(s->s.startWith("王")) 留下开头为王的数据,返回一个新的stream对象

Stream<T> limit(long maxSize)  截取指定参数个数的数据

 Stream<T>   skip(long n)  跳过指定参数个数的数据

static Stream<T>  concat(Stream a, Stream b)  合并a和b

Stream<T>distinct() 去除流中的重复数据(依赖于 hashCode和equals方法)

3 终结方法

forEach(Consumer action)对此流的每个元素进行操作

             Consume接口中的  void accept(Y t)对给定参数执行此操作

count()返回流中元素的个数

收集系列

 

R collect(Collector collector) //收集流中的数据,不创建容器,不把数据添加到容器中

Collectors中的静态方法

例    stream.collect(Collector.toList())

toList()把元素收集到List

 

toSet()

toMap (key ,value)

 

posted @   互联.王  阅读(43)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示