创建实体类:
@Data
@AllArgsConstructor
@NoArgsConstructor
public class PointVo {
private String name;
private Integer y;
}
要求:已知list1和list2中name字段部分一致,将list2中的y字段根据与list2中的name字段相同的部分复制给list2
name字段不重合的部分y赋空值:
tmps = tmps.stream().map(item -> reality.stream().filter(
rea -> item.getName().equals(rea.getName())).findFirst().map(rea -> {
item.setY(rea.getY());
return item;
}).orElse(new PointVo(item.getName(), 0))
).collect(Collectors.toList());
name字段不重合的部分对象赋空值:
tmps = tmps.stream().map(item -> reality.stream().filter(
rea -> item.getName().equals(rea.getName())).findFirst().map(rea -> {
item.setY(rea.getY());
return item;
}).orElse(null))
).collect(Collectors.toList());
