zoukankan      html  css  js  c++  java
  • Lambda表达式使用整理

    1、List转换

    List<String> departmentIdList = userList.stream().map(e -> e.getDepartmentId()).collect(Collectors.toList());

    2、List转换并且转换为Set

    Set<String> departmentIdSet = userList.stream().map(e -> e.getDepartmentId()).filter(e -> ValidateUtil.isNotNull(e)).collect(Collectors.toSet());

    3、过滤

    Set<String> departmentIdSet = userList.stream().map(e -> e.getDepartmentId()).filter(e -> ValidateUtil.isNotNull(e)).collect(Collectors.toSet());

    4、List转换为Map

    Map<String, String> deptMap = userDeptList.stream().collect(Collectors.toMap(e -> e.getDeptId(), e -> e.getDeptName()));

    5、使用代码块进行转换

    List<String> menuCodeList=menuFunctionList.stream().map(e->{
    String menuCodeTemp=e.getMenuCode();
    String menuCode = menuCodeTemp.substring(menuCodeTemp.lastIndexOf("_")+1);
    return menuCode;
    }).collect(Collectors.toList());


    6、分组转换
    //单一分组条件,根据code
    Map<String, List<Student>> singleMap = studentList.stream().collect(Collectors.groupingBy(Student::getCode));
     //组合分组条件
    Map<String, List<Student>> complexMap = studentList.stream().collect(Collectors.groupingBy(e -> fetchGroupKey(e)));
    List<Student> studentList1 = complexMap.get("yangtao+1");
    List<Student> studentList2 = complexMap.get("yangtao+2");
    private static String fetchGroupKey(Student student){
       return student.getUsername() +"+"+ student.getCode();
    }
  • 相关阅读:
    Android一些问题
    内存泄漏(Memory Leak)
    内存溢出OOM
    Android面试题集合
    Handler之同步屏障机制(sync barrier)
    IdleHandler 原理浅析
    OkHttp原理
    RxJava操作符
    Android电量优化全解析
    Android内存优化大盘点
  • 原文地址:https://www.cnblogs.com/dancser/p/12560927.html
Copyright © 2011-2022 走看看