为什么我没有导入商品信息,程序还可以继续运行?
Map<String,GoodsInCart> shoppingCart1=new HashMap<String,GoodsInCart>(); Scanner scanner=new Scanner(System.in); /** * 通过商品编号找到对应的要购买的商品 * @param gm */ public void addGoodsToCart(GoodsManage gm){//添加商品到购物车 Set<Goods> set=gm.getGoods();//將所有商品存入集合中 String str=null; //如果未导入商品列表则提示导入 if(gm.getGoods().size()==0){ System.out.println("请先导入商品列表!"); }else{ gm.displayAllGoods();//已导入则列出商品列表 for(Goods o:set){ System.out.println("请输入要购买的商品的编号:"); str=scanner.next(); if(o.getGoodsID().equals(str)){ System.out.println("请输入该购买的数量:"); int n=scanner.nextInt(); GoodsInCart gc=new GoodsInCart(o,n); shoppingCart1.put(str, gc); }else{ System.out.println("没找到该商品!"); continue; } } } } Set<Goods> set=new HashSet<Goods>(); //商品信息导入方法 public void importGoods(){ Goods a=new Goods("S0001","洗衣机",1500.00,"洗衣机可洗衣服"); Goods b=new Goods("S0002","电脑",12000.00,"电脑可以上网"); Goods c=new Goods("S0003","空调",4000.00,"开空调很凉快"); Goods d=new Goods("S0004","冰箱",8000.00,"冰箱可以存储食物"); set.add(a); set.add(b); set.add(c); set.add(d); System.out.println("商品信息导入成功!"); } //显示商品信息方法 public void displayAllGoods(){ Iterator<Goods> it=set.iterator(); while(it.hasNext()){ System.out.println(it.next()); } } package com.imooc.goods; import java.util.HashSet; public class Test { public static void main(String[] args) { //实例化4个商品对象 Goods a=new Goods("S0001","洗衣机",1500.00,"洗衣机可洗衣服"); Goods b=new Goods("S0002","电脑",12000.00,"电脑可以上网"); Goods c=new Goods("S0003","空调",4000.00,"开空调很凉快"); Goods d=new Goods("S0004","冰箱",8000.00,"冰箱可以存储食物"); Set<Goods> goods=new HashSet<Goods>(); goods.add(a); goods.add(b); goods.add(c); goods.add(d); GoodsManage gm=new GoodsManage(goods); ShoppingCart sc=new ShoppingCart(); Scanner s=new Scanner(System.in); boolean flag=false; int n=0; while(flag==false){ System.out.println("***********************************"); System.out.println(" 主菜单 "); System.out.println(" 1-商品管理 "); System.out.println(" 2-购物车 "); System.out.println(" 0-退出 "); System.out.println("***********************************"); n=s.nextInt(); flag=true; switch(n){ case 1: while(true){ System.out.println("***********************************"); System.out.println(" 商品管理 "); System.out.println(" 1-商品信息导入 "); System.out.println(" 2-显示所有商品信息 "); System.out.println(" 9-返回上一级菜单 "); System.out.println("***********************************"); n=s.nextInt(); switch(n){ case 1:gm.importGoods(); break; case 2:gm.displayAllGoods(); break; } if(n==9){ flag=false; break; } } break; case 2:while(flag==true){ System.out.println("***********************************"); System.out.println(" 购物车管理 "); System.out.println(" 1-添加商品到购物车 "); System.out.println(" 2-修改购物车中的商品数量 "); System.out.println(" 3-显示购物车中的所有商品信息 "); System.out.println(" 4-结算 "); System.out.println(" 9-返回上一级菜单 "); System.out.println("***********************************"); n=s.nextInt(); switch(n){ case 1:sc.addGoodsToCart(gm); break; case 2:sc.updateNumInCart(); break; case 3:sc.displayAllInCart(); break; case 4:sc.settleAccount(); break; } if(n==9){ flag=false; break; } } break; case 0: System.out.println("退出!"); break; } } } }
17
收起
正在回答 回答被采纳积分+1
1回答
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星