• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
江徽1993
烟花散尽,不问繁华
博客园    首页    新随笔    联系   管理    订阅  订阅

Lamda表达式总结

1,按照指定的字符串的顺序进行排序

List<String> list1 = Arrays.asList("a", "b", "c", "d");

List<String> list2 = Arrays.asList("b", "d", "a", "c");

// 正序  a,b,c,d

list2.sort(Comparator.comparingInt(o -> list1.indexOf(o)));

// 倒序  d,c,b,a

list2.sort(Comparator.comparingInt(o -> list1.indexOf(o)).reversed());

2,对list指定字段的值进行设值

name:haodj

age:26

list.forEach(p -> p.setName(p.getAge));

name:26

age:26

快速将age字段的值赋给Name中;

3,对list按照指定条件进行过滤

list.stream().filter(u -> u.getId() > 1);

4,将list里的转化成Map对象

before:【name:haodj 

                 email:123@qq.com】

Map<String, String> map = list.stream(). collect(Collectors.toMap(LamdaVO::getName, LamdaVO::getEamil, (o, n) -> o));

after:key:haodj

           value:123@qq.com

5,将list里的对象提取出来组成新的list

List<String> listAnother = list.stream().map(LamdaVO::getName).collect(Collectors.toList());

 

posted @ 2020-08-13 18:38  江徽1993  阅读(130)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3