package www.mary.Bean; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import www.mary.access.*; public class Cart { private Map map=Collections.synchronizedMap(new HashMap());//该属性用来存采购的产品项,是按照id号作索引,以nember记录存入多少相同的实例 public Cart() { } public void additem(String itemid,int number){ //先判断购物车中有没有重复的产品 boolean is=this.isContain(itemid); if(is){ CarItem caritem=(CarItem)map.get(itemid); caritem.add(number); }else{ //如果购物车中没有该产品项 ItemBean item=PowerAccess.getOneItem(itemid); CarItem caritem=new CarItem(item,number);//? map.put(itemid,caritem); //? } } //这类是判断是否有相同的产品,以itemid作为索引来查询 public boolean isContain(String itemid){ return map.containsKey(itemid); } //这里是更行 public void updateNumber(String itemid,int number) { CarItem caritem=(CarItem)map.get(itemid); caritem.setNumber(number); } public void removeItem(String itemid) { map.remove(itemid); } //得到某种产品项的总价格 public double getItemTotalPrice(String itemid) { CarItem caritem=(CarItem)map.get(itemid); //通过itemid得到map存的实例 double listprice=caritem.getItem().getLISTPRICE(); //得到价格 int number=caritem.getNumber(); //得到数量 return listprice*number; //得到行的总金额 } public double getTotalPrice() //得到列的总金额 { double totalprice=0.0; //如果没有产品,初始值为0.0 Iterator iter=map.values().iterator(); //迭代展现map while(iter.hasNext()) { CarItem caritem=(CarItem)iter.next(); //得到cartitem实例 double listprice=caritem.getItem().getLISTPRICE(); //先得到行的总金额 int number=caritem.getNumber(); //再得到每行的数量 totalprice+=listprice*number; //然后随着循环累加金额 } return totalprice; } public Map getMap() { return map; } }

rebest LV2
2024年12月27日
23120450 LV1
2024年6月18日
郭宇航裹裹 LV5
2024年6月8日
微信网友_7005760998215680 LV6
2024年5月23日
statics LV1
2024年5月7日
xiaotang156 LV2
2023年11月25日
2036495585 LV9
2023年9月25日
天士大夫 LV2
2023年5月25日
1004233692 LV1
2023年4月20日
itlaolang LV6
2023年3月10日

rebest LV2
2024年12月27日
微信网友_7313058229293056
2024年12月26日
暂无贡献等级
fankech LV1
2024年11月4日
zmj040202 LV1
2024年10月28日
yanghu1632 LV1
2024年8月9日
微信网友_7043154826989568 LV1
2024年6月18日
微信网友_6992940666048512 LV1
2024年6月18日
23120450 LV1
2024年6月18日
郭宇航裹裹 LV5
2024年6月7日
微信网友_7005760998215680 LV6
2024年5月23日