【发布时间】:2020-07-27 15:48:37
【问题描述】:
我有两个如下列表:
List<TemplateObject> list1;
List<InUseObject> list2;
我需要从模板(源)读取并通过从模板复制所有元素值来创建新的 InUse 实例(目标)。鉴于两个列表中的所有字段/元素都具有相同的数据类型。
有多种实现方式(例如克隆、浅/深复制)。
问题:如何使用 Java 8+ 实现它。最好是一个衬垫?
【问题讨论】:
-
请提供类定义。
-
是否要将两个
Lists 合并为第三个List? -
无需将 Source 元素复制到 Target。列表元素的一对一映射。
-
您希望如何从
TemplateObject转换为InUseObject? -
List
list2 = list1.stream().map(InUseObject::getInUseObjFromTemplateObj).collect(Collectors.toList());可能会奏效。把你的映射逻辑方法"static InUseObject getInUseObjFromTemplateObj(TemplateObject)"方法
标签: java object generics copy listitem