0
点赞
收藏
分享

微信扫一扫

Java 8 Stream Lambda 教程

minute_5 2022-04-15 阅读 60
java

Java新特性

🦆Java如何创建Stream

🦆Stream常用的中间操作


Java新特性

🦆Java如何创建Stream

//生成一个包含🦆、🐕的集合
List<String> list = Arrays.asList("duck", "dog");
//普通流
Stream<String> stream = list.stream();
//并行流 需要注意线程安全问题
Stream<String> stringStream = list.parallelStream();

🦆Stream常用的中间操作

       🐟Map

//生成一个包含🦆的集合
List<Duck> list = new ArrayList<>();
//获取🦆的颜色集合
List<String> colorList = list.stream().map(Duck::getColor).collect(Collectors.toList());
//获取🦆的Id集合
List<String> idList = list.stream().map(Duck::getId).collect(Collectors.toList());

       🐟Filter

//生成一个包含🦆的集合
List<Duck> list = new ArrayList<>();
//获取黄色🦆的集合
List<Duck> collect = list.stream().filter(duck -> "yellow".equals(duck.getColor())).collect(Collectors.toList());

       🐟Sort 

//生成一个包含🦆的集合
List<Duck> list = new ArrayList<>();
//按照🦆的年龄升序排列
List<Duck> sortedUpDuck = list.stream().sorted(Comparator.comparingInt(Duck::getAge)).collect(Collectors.toList());
//按照🦆的年龄降序排列
List<Duck> sortedDowmDuck = list.stream().sorted(Comparator.comparingInt(Duck::getAge).reversed()).collect(Collectors.toList());

       🐟Distinct

//生成一个包含🦆的集合
List<Duck> list = new ArrayList<>();
//过滤掉属性一样的🦆
List<Duck> sortedUpDuck = list.stream().distinct().collect(Collectors.toList());

        

举报

相关推荐

0 条评论