• Stream流基础


    Stream流的作用:简化集合、数组操作的API。结合了Lambda表达式。
    1.获取stream流
    conllections:
    list.stream()
    map:
    map.keySet().stream()
    map.values().stream()
    map.entrySet().stream()
    数组
    Arrays.stream(arr)
    Stream.of(arr)   可变流
    文件
    Files.lines(Paths.get("data.txt"), Charset.defaultCharset())
    函数
    Stream iterateStream = Stream.iterate(0, n -> n + 2).limit(5); //创建五个偶数
    Stream.generate(Math::random).limit(5);  //随机生成五个数
    2.API
    filter() 对流中的数据过滤;    用于通过设置的条件过滤出元素
    map()   //接受一个函数作为参数。这个函数会被应用到每个元素上;可以做拼接加减乘除等
    sorted  //排序
    limit()   //获取前几个元素
    skip()   //跳过前几个元素
    distinct()  //去除流中的重复元素
    Streatm.concat(stream a ,stream b) //合并流
    peek  //对元素进行遍历处理

    3.终端操作符结束操作
    stream流.collector(指定容器)  //收集流到指定类型
        容器
        Collectors.tolist()
        Collectors.toset()
        Collectors.tomap(function keymapper,function valuemapper)
        Collectors.counting() //元素总数
        Collectors.summingInt() //对结果元素求和
        Collectors.minBy() //筛选元素中最小的
        Collectors.joining("||")//将元素以指定分隔符链接成字符串;
        Collectors.groupingBy() //分组
        
    forEach()      //遍历流
    findFirst() //返回第一个元素
    findAny()  //将返回当前流中的任意元素
    count() //返回流中元素总数
    sum()  //求和
    max()
    min()
    anyMatch() //Match    检查是否至少匹配一个元素,返回boolean
    allMatch()  //检查是否匹配所有元素,返回boolea
    noneMatch() //检查是否没有匹配所有元素,返回boolean
    reduce() //可以将流中元素反复结合起来,得到一个值
    orElse(null) //表示如果一个都没找到返回null
    orElseGet(null)//表示如果一个都没找到返回null   !在执行stream().filter()方法时,即使orElse没有值 也会执行 orElse 内的方法, 而 orElseGet则不会

  • 相关阅读:
    多进程并发服务器
    HDLbits:Fsm onehot
    EasyExcel的写入和读取操作
    docker network create命令
    Acwing/3359. 更多奇怪的照片
    虹科分享 | 集中管理的安全USB驱动器的好处
    SIFT和SURF的差异已经使用场景分析
    既然有HTTP协议,为什么还要有RPC
    概率论之巴拿赫的火柴盒问题
    vue3实现导出Excel(2)
  • 原文地址:https://blog.csdn.net/weixin_73510682/article/details/128077120