后端:数据流、数据聚合

参考https://www.runoob.com/java/java8-streams.html


案例1:

QueryWrapper<Group> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("enterprise_id",enterprise.getEnterpriseId());
List<String> stringList = groupMapper.selectList(queryWrapper)
          .stream()  // 首先调用了 stream() 方法将 List<Group> 转换为 Stream
          .map(Group::getGroupName)  // 然后使用 map() 方法将每个 Group 对象映射为 Group 对象 的 GroupName 属性的值
          .collect(Collectors.toList());  // 最后使用 collect() 方法将映射后的结果收集到一个新的 List<String> 中

案例2:
// 有时候queryWrapper.in("exam_id",examIdList);可以解决问题

List<Integer> examIdList = getMyExamIdList(candidateId);

QueryWrapper<Exam> queryWrapper = new QueryWrapper<>();
List<Exam> myExamList = examMapper.selectList(queryWrapper)
        .stream()
        .filter(exam -> examIdList.contains(exam.getExamId()))  //  过滤掉不在examIdList里的元素
        .toList();
posted @ 2024-03-06 15:36  惊朝  阅读(9)  评论(0编辑  收藏  举报