美文网首页
拉姆达表达式日常使用

拉姆达表达式日常使用

作者: Mr_YangSir | 来源:发表于2019-11-04 14:36 被阅读0次

来自于日常开发~~

1、提取集合中的前20个数据

```

LinkedList<UserInfo> list1 = new LinkedList<UserInfo>();

            if (list.size() > 20) {

                list1 = (LinkedList<UserInfo>) list.subList(0, 19);

                list = list1;

            }

```

2、集合中按照时间进行排序

```

private static void ListSort(List<AccountsBillsDto> list) {

        Collections.sort(list, new Comparator<AccountsBillsDto>() {

            @Override

            public int compare(AccountsBillsDto o1, AccountsBillsDto o2) {

                try {

                    Date dt1 = o1.getBillTime();

                    Date dt2 = o2.getBillTime();

                    if (dt1.getTime() < dt2.getTime()) {

                        return 1;

                    } else if (dt1.getTime()>dt2.getTime()) {

                        return -1;

                    } else {

                        return 0;

                    }

                } catch (Exception e) {

                    e.printStackTrace();

                }

                return 0;

            }

        });

    }

```

3、对List数据进行规律,实现模糊查询

```

    List<Person> allPerson = getPerson();

    System.out.println("男性人数为"+ allPerson.stream().filter(person -> person.getGen().equals("男")).count());

```

4、list循环遍历

```

原方式:

for(String name : friends) {

    System.out.println(name);

}

lamada如下:

A、friends.forEach((name) -> System.out.println(name));

B、friends.forEach(name -> System.out.println(name));

如果是List<String>,则使用下方的语法进行打印

List<String> lists;

lists.forEach(a->System.out.println(a));

```

5、对集合中的元素某一个属性进行去重

```

List<PayChannelInfo> payChannelInfos = payChannelInfoMapper.selectBatchIds(strings);

//拉姆达表达式 进行去重

payChannelInfos.stream().collect(Collectors.collectingAndThen(

Collectors.toCollection(()->new TreeSet<>(Comparator.comparing(o ->o.getChannelName()))),ArrayList::new));

```

6、对集合中的元素的某一属性进行求和

```

语法:

list.stream().map(类名::属性的get方法).reduce(BigDecimal.ZERO, BigDecimal::add))

如:

list.stream().map(MyMagicMiGangVO::getCumulativeRepayPrincipal).reduce(BigDecimal.ZERO, BigDecimal::add)

```


PS: 第一次写文章 吼吼

相关文章

  • 拉姆达表达式遍历集合元素

    拉姆达表达式在匿名内部类有使用,这次要说的是在集合中遍历元素 在哈希图里使用拉姆达表达式: 在集合里使用拉姆达表达式:

  • 拉姆达表达式日常使用

    来自于日常开发~~ 1、提取集合中的前20个数据 ``` LinkedList list1 = new Link...

  • 开启java8中的LAMBDA

    使用java8的兰姆达表达式会报错: Error:Jack is required to support java...

  • 第7章 函数表达式

    1、定义函数的两种方式:1)函数声明:存在函数声明提升2)函数表达式:使用前必须先赋值;匿名函数(拉姆达函数) 2...

  • Button注册方法之大坑

    For循环里面给Button添加带参数的注册方法 Button添加带参数的注册方法二(拉姆达表达式)

  • Java的拉姆达表达式

    拉姆达表达式由三部分构成()代表参数->{}可省略,主体可以是表达式和语句,如果是表达式需要去return,但是语...

  • 拉达姆水库

    小时候喜欢听奶奶讲过去的事情,想来是因为更多的把她当朋友、当导师,所以想知道她和我一样年纪时的经历和想法。 这样,...

  • 拉姆达毒株

    德尔塔变异毒株带来的全球疫情警报还未解除,一个名叫“拉姆达”的变异毒株又开始出现“冒尖”趋势。目前,拉姆达毒株已被...

  • Block or Delegate

    背景 游戏开发的过程中,就涉及到闭包(拉姆达表达式lambda)和代理的选择,当然在游戏中选择还是比较容易的,因为...

  • 不败的格桑花

    你唤我达娃拉姆 多么清澈纯粹 在世俗中 毫无察觉 泯灭掉的人性 再也找不回 还想回到过去 不期望能再是达娃拉姆 月...

网友评论

      本文标题:拉姆达表达式日常使用

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