list取某一属性组成单独list
QueryWrapper<User> wrapper = new QueryWrapper<>(); wrapper.lambda().eq(User::getName, nameReqDto.getName()); List<User> userList = UserMapper.selectList(wrapper); List<String> list = userList.stream().map(User::getName).collect(Collectors.toList());
list取Double类型并求和
Double sum = list.stream().mapToDouble(User::getScore).sum();
list取BigDecimal类型并求和
BigDecimal num = list.stream().map(User::getCharge).reduce(BigDecimal.ZERO, BigDecimal::add);
xml中判断是否有list内的取值
用foreach,item和取值内相同即可,取名不重要,list只需要判断null和size大于0
<if test="pageDto.reqParam.nodeIds != null and pageDto.reqParam.nodeIds.size() > 0"> and node_id in <foreach item="nodeId" collection="pageDto.reqParam.nodeIds" open="(" close=")" separator=","> (#{nodeId}) </foreach> </if>