举例:
List<CartDTO> cartDTOList = new ArrayList<>();
for (OrderDetail orderDetail: orderDTO.getOrderDetailList()) {
CartDTO cartDTO = new CartDTO(orderDetail.getProductId(), orderDetail.getProductQuantity());
cartDTOList.add(cartDTO);
}
可用 Steam().map()来代替。作用把OrderDetail类的相关属性复制到cartDTOList列表里。
List<CartDTO> cartDTOList = orderDTO.getOrderDetailList().stream().map(e->
new CartDTO(e.getProductId(),e.getProductQuantity()))
.collect(Collectors.toList());
注意:
由于相同的属性名会被复制,所以为null的属性也会被复制