美文网首页
常用的lambda表达式

常用的lambda表达式

作者: 初心myp | 来源:发表于2020-07-21 17:20 被阅读0次

1. String集合拼接字符串:

storeList.stream().collect(Collectors.joining(","));

2. 对象集合根据某个属性获取一个Set集合:

List<Org> orgList = new ArrayList<>();
Set<String> orgList = orgList.stream()
                      .map(e -> String.valueOf(e.getId()))
                      .collect(Collectors.toSet());

Set<String> orgList = orgList.stream()
                      .map(Org::getId()))
                      .collect(Collectors.toSet());

3. 对象集合根据某个属性过滤满足条件的数据:

List<StoreVO> storeList = new ArrayList<>();            
List<StoreVO> storeVOList = storeList.stream()
                            .filter(e -> e.getDelFlg() != 1)
                            .collect(Collectors.toList());

4. 对象集合根据某个字段分组:

Map<String, List<User>> groupBySex = userList.stream()
                                    .collect(Collectors.groupingBy(User::getSex));

5. 对象集合获取某个字段的最小值:

Date minEntryDate = userList.stream()
                    .map(User::getEntryDate)
                    .min(Date::compareTo)
                    .get();

6. 对象集合获取某个字段的最大值:

Date maxEntryDate = userList.stream()
                    .map(User::getEntryDate)
                    .max(Date::compareTo)
                    .get();

7. 对象集合求某个值最大的对象:

Comparator<LeasingBusinessContract> comparator = 
Comparator.comparing(LeasingBusinessContract::getLeaseEndDate);

LeasingBusinessContract maxObject = 
leasingBusinessContractList.stream().max(comparator).get();

8. 对象集合根据对象中的某个属性进行去重:

thirdOrgList.stream()
        .collect(
                Collectors.collectingAndThen(Collectors.toCollection(() -> 
                new TreeSet<>(Comparator.comparing(o -> o.getId()))),
                ArrayList::new));

9. 已知两个集合,可以是两个不同对象的集合。根据两个对象中的某个属性进行求差集:

List<CmsModelItem> result = initList.stream()
                    .filter(init -> !yesList.stream()
                            .map(e -> e.getField())
                            .collect(Collectors.toList())
                            .contains(init.getField()))
                    .collect(Collectors.toList());

**1. 集合根据某个字段进行排序功能

 unprocessedItemList.sort(new Comparator<MapgpsAlarmRecordResult>() {
            @Override
            public int compare(MapgpsAlarmRecordResult o1, MapgpsAlarmRecordResult o2) {
                if (o1.getTypeWeight() == null || o2.getTypeWeight() == null) {
                    return 0;
                } else {
                    return o1.getTypeWeight().compareTo(o2.getTypeWeight());
                }
            }
        });

相关文章

  • Python lambda函数

    lambda函数 在Python中,lambda函数是使用lambda表达式定义的单行匿名函数。它常用于将函数作为...

  • JDK8之Lambda表达式

    Lambda表达式 Lambda表达式介绍 举例: lambda表达式语法 lambda表达式中的this概念 L...

  • 关于lamda 表达式以及mutable 参数

    C++11引入了Lambda表达式。Lambda表达式的引入,方便了简短函数的定义,为常用的一次性函数的定义和使用...

  • Lambda表达式

    Lambda表达式 >> Lambda表达式和高阶方法Lambda表达式是一种匿名方法的表示方式。Lambda表达...

  • java8利用lambda表达式来封装jedis的连接池资源

    lambda表达式 什么是lambda? “Lambda 表达式”(lambda expression)是一个匿名...

  • Lambda

    一、表达式 1.1 Lambda表达式格式: 1.2 有效的Lambda表达式 1.3 Lambda示例 二、函数...

  • lambda表达式

    lambda表达式 什么是Lambda表达式 Lambda: In programming languages s...

  • 64.有参lambda表达式

    1.lambda单独存在 2.通过变量保存lambda表达式 3.lambda表达式的返回值 lambda表达式的...

  • C++ lambda表达式

    lambda表达式 目录 一、开篇 二、lambda初识 三、lambda基本用法 四、lambda表达式捕获列表...

  • Java8学习笔记--Lambda表达式,Functional接

    主要内容 Lambda表达式 Functional接口 方法引用 1.Lambda表达式 Lambda表达式这个新...

网友评论

      本文标题:常用的lambda表达式

      本文链接:https://www.haomeiwen.com/subject/ouqwkktx.html