我明白商品编号和名称是Items的toString()方法打印出来的,但是我不知道控制台的=4是怎么来的?没看见有关于这个的输出方法,求教大家
map的键值对
obj应该是包含了两部分内容:一部分就是Items,此时输出的就是Items类中toString方法的内容“ "商品编号:"+this.getId()+",商品名称:"+this.getName(); ”;第二部分是Integer,就是商品的数量。至于为什么有等号,我也没搞清楚。。。。
同问+1
public static void main(String[] args) {
//创建商品对象
Items item1 = new Items(1,"沃特篮球鞋","温州",200,500,"001.jpg");
Items item2 = new Items(2,"李宁运动鞋","广东",300,500,"002.jpg");
Items item3 = new Items(1,"沃特篮球鞋","温州",200,500,"001.jpg");
Cart c = new Cart();
c.addGoodsInCart(item1, 1);
c.addGoodsInCart(item2, 2);
//再次购买沃特篮球鞋,购买3双
c.addGoodsInCart(item3, 3);
Set<Map.Entry<Items, Integer>> entries = c.getGoods().entrySet();
for(Map.Entry<Items, Integer> entry : entries){
System.out.println("商品编号:"+entry.getKey().getId()
+", 商品名称:"+entry.getKey().getName()
+", 购买数量:"+entry.getValue());
}
System.out.println(c.getTotalPrice());
}