List中移除數據某條不需要的數據


在做項目的時候,突然需求設計上說,購物車里面的商品數目為0的時候,則該數據就不需要存在緩存

 

商品Dto

@data
public class MealGoodDto implements Serializable {

/**
* Uid
*/
private String uid;

/**
* 菜品Uid
*/
private String mealGoodsUid;

/**
* 欄目uid
*/
private String columnUid;

/**
* 商品名稱
*/
private String goodsName;

/**
* 優惠價格
*/
private BigDecimal discount;

/**
* 價格
*/
private BigDecimal price;

/**
* 數量
*/
private int quantity;

/**
* 當前庫存
*/
private Integer currentInventory;

/**
* 商品圖片url
*/
private String proImgUrl;

/**
* 商品口味集合
*/
private List<GoodsTaste> goodsTasteList;

/**
* 商品信息判斷 0代表庫存不足 -1代表商品失效 1已售完
*/
private String goodsMsgFlag;

/**
* 商品口味
*/
private String goodsTaste;

/**
* 增減區分
*/
private int regulationType;

/**
* 商品類型 商品or商品包
*/
private int type;

/**
* 會員商品UID
*/
private String goodsUid;

/**
* 規格uid
*/
private String specificationsUid;

/**
* 規格名字
*/
private String specificationName;}

移除的方式:


for (int i = 0; i < mealGoodDtoList.size(); i++) {
MealGoodDto mealGoodDto1 = mealGoodDtoList.get(i);
//同一商品名(規格)及口味則在購物車歸為一條商品顯示
String goodsTaste = mealGoodDto.getGoodsTaste();
String goodsTaste1 = mealGoodDto1.getGoodsTaste();
if (mealGoodDto.getMealGoodsUid().equals(mealGoodDto1.getMealGoodsUid())
&& StringUtils.equals(goodsTaste, goodsTaste1)) {
//商品數量
setQuantity(mealGoodDto1, mealGoodDto.getRegulationType());
if (mealGoodDto1.getQuantity() == 0) {
mealGoodDtoList.remove(i);
}
return mealGoodDtoList;
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM