stream流做的那些事

假如一个学生类的list集合,返回50条数据;我只需要该集合中的学生姓名name字段,其他的字段都不想要,那么可以

java 复制代码
String gender="男";
List<Student> students = studentMapper.selectListByQuery(QueryWrapper.create()
.where(STUDENT.GENDER.eq(gender)));
List<String> nameList = students.stream().map(Student::getName).collect(Collectors.toList());
//nameList存的全是name字段的值

通过stram流把Student集合转换成StudentAo集合,案例

java 复制代码
 public R<Page<StudentAo>> sysGetPage(@RequestBody StudentVo vo) {
        Page<Student> page = studentService.page(vo.getPage(), vo.giveQuerywrapper());
        Page<StudentAo> pageAo =new Page<>();
        List<Student> records = page.getRecords();
        List<StudentAo> collect = records.stream().map(student -> {
            StudentAo ao = new StudentAo();
            BeanUtils.copyProperties(student, ao);
            return ao;
        }).collect(Collectors.toList());
        pageAo.setRecords(collect);
        pageAo.setPageSize(page.getPageSize());
        pageAo.setPageNumber(page.getPageNumber());
        pageAo.setTotalPage(page.getTotalPage());
        pageAo.setTotalRow(page.getTotalRow());
        return R.ok("成功",pageAo);
    }
相关推荐
原野心存4 分钟前
java基础进阶——继承、多态、异常捕获(2)
java·java基础知识·java代码审计
进阶的架构师9 分钟前
互联网Java工程师面试题及答案整理(2024年最新版)
java·开发语言
黄俊懿9 分钟前
【深入理解SpringCloud微服务】手写实现各种限流算法——固定时间窗、滑动时间窗、令牌桶算法、漏桶算法
java·后端·算法·spring cloud·微服务·架构
木子020417 分钟前
java高并发场景RabbitMQ的使用
java·开发语言
夜雨翦春韭29 分钟前
【代码随想录Day29】贪心算法Part03
java·数据结构·算法·leetcode·贪心算法
大霞上仙1 小时前
jmeter学习(1)线程组与发送请求
java·学习·jmeter
笃励1 小时前
Java面试题二
java·开发语言·python
易雪寒2 小时前
IDEA在git提交时添加忽略文件
java·git·intellij-idea
打码人的日常分享2 小时前
企业人力资源管理,人事档案管理,绩效考核,五险一金,招聘培训,薪酬管理一体化管理系统(源码)
java·数据库·python·需求分析·规格说明书
27669582922 小时前
京东e卡滑块 分析
java·javascript·python·node.js·go·滑块·京东