短短代码,意义非凡,博主小惊叹!
/**
* 确认购物车商品信息
* @param productIdList
* @return
*/
@Override
public List<CartItemVO> confirmOrderCartItems(List<Long> productIdList) {
//获取全部购物车的购物项
List<CartItemVO> cartItemVOList = buildCartItem(true);
//根据需要的商品id进行过滤,并清空对应的购物项
List<CartItemVO> resultList = cartItemVOList.stream().filter(obj->{
if(productIdList.contains(obj.getProductId())){
this.deleteItem(obj.getProductId());
return true;
}
return false;
}).collect(Collectors.toList());
return resultList;
} 此例子为用户发起订单之后,查找全部购物车的商品,然后根据选择了的商品进行转换出来的新list,返回出来,并且对购物车里面的商品进行消除,可谓优雅至极!这里我们要学习的也就是Lambda 表达式了
本文作者为DBC,转载请注明。