Stream流以及常见中间和结束操作方法

 arry.stream().filter(s->s.length()==3).filter((String s)->{return s.startsWith("张");}).forEach(s-> System.out.println(s));

在这里插入图片描述

Stream流的生成操作

在这里插入图片描述
在这里插入图片描述

filter()过滤

在这里插入图片描述
在这里插入图片描述

limit()和skip()

在这里插入图片描述

ArrayList<String> arry=new ArrayList<>();
        arry.add("张志清");
        arry.add("王文兵");
        arry.add("历史写");
        arry.add("张三丰");
        arry.add("和沙湾");
        arry.add("张雪得分");
        arry.add("佳世达");
        //输出前三个元素
        arry.stream().limit(3).forEach(s-> System.out.println(s));
        System.out.println("-------");
        //跳过前三个元素
        arry.stream().skip(3).forEach(s-> System.out.println(s));
        System.out.println("-------");
        //跳过两个元素,再输出剩余元素的前三个元素
        arry.stream().skip(2).limit(2).forEach(System.out::println);

concat()和distinct()

在这里插入图片描述

ArrayList<String> arry=new ArrayList<>();
        arry.add("张志清");
        arry.add("王文兵");
        arry.add("历史写");
        arry.add("张三丰");
        arry.add("和沙湾");
        arry.add("张雪得分");
        arry.add("佳世达");

        Stream<String> limit = arry.stream().limit(5);
        Stream<String> skip = arry.stream().skip(3);

        //将两个流合并到一块

        //Stream.concat(limit, skip).forEach(s-> System.out.print(s+" "));//张志清 王文兵 历史写 张三丰 和沙湾 张三丰 和沙湾 张雪得分 佳世达
        //将其中重复元素删除
        Stream.concat(limit,skip).distinct().forEach(s-> System.out.print(s+" "));//张志清 王文兵 历史写 张三丰 和沙湾 张雪得分 佳世达

sort

在这里插入图片描述

arry.add("sfda");
        arry.add("afdf");
        arry.add("ewrewr");
        arry.add("fdfsdf");
        arry.add("fsdfsdv");
        arry.add("fdsfdsfsdf");
        arry.add("ddddfs");
        //自然排序
        //arry.stream().sorted().forEach(s-> System.out.print(s+" "));//afdf ddddfs ewrewr fdfsdf fdsfdsfsdf fsdfsdv sfda
        //按照长度排序,长度一样按自然排序
        arry.stream().sorted((s1,s2)->{
            int num=s1.length()-s2.length();
            if(num==0)
                num=s1.compareTo(s2);
            return num;
        }).forEach(s-> System.out.print(s+" "));//afdf sfda ddddfs ewrewr fdfsdf fsdfsdv fdsfdsfsdf 
    }

map和maptoint方法

在这里插入图片描述
在这里插入图片描述

ArrayList<String> arry = new ArrayList<>();
        arry.add("10");
        arry.add("20");
        arry.add("30");
        arry.add("40");
        arry.add("50");
        arry.add("60");

        arry.stream().map(s -> Integer.parseInt(s)).forEach(s -> System.out.println(s));
        int i=arry.stream().mapToInt(s->Integer.parseInt(s)).sum();
        System.out.println(i);//210

常见结束操作方法foreach&count

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值