BeanUtils.copyProperties 与stream 结合,复制list
时间: 2024-05-14 17:10:55 浏览: 160
beanUtils , CopyProperty
BeanUtils.copyProperties是一个常用的Java工具类,用于将源对象的属性值复制到目标对象的属性中。stream是Java 8引入的一个新特性,可以方便地进行集合处理。
当需要将一个List中的元素复制到另一个List中时,可以结合使用BeanUtils.copyProperties和stream。示例代码如下:
```java
List<Source> sourceList = getSourceList();
List<Target> targetList = sourceList.stream().map(source -> {
Target target = new Target();
BeanUtils.copyProperties(source, target);
return target;
}).collect(Collectors.toList());
```
上述代码中,getSourceList()返回一个源对象List,需要将其中的元素复制到目标对象List中。使用stream先将源对象List转换为Stream,再使用map函数将每个源对象映射为目标对象并复制属性值,最后使用collect函数将Stream转换为目标对象List。
阅读全文