超市管理系统

时间:2022-11-13 23:24:03
public class FruitItem {
	int ID;
	String name;
	double price;
}

  

  1 import java.util.ArrayList;
  2 import java.util.Scanner;
  3 
  4 public class Demo1 {
  5 
  6     public static void mainMenu()// 菜单
  7     {
  8         System.out.println("==============欢迎光临超市==============");
  9         System.out.println("1:货物清单" + " " + "2:添加新货物" + " " + "3:删除货物" + "4:修改货物" + "5:退出系统");
 10         System.out.println("请输入要操作的功能序号");
 11     }
 12 
 13     public static void init(ArrayList<FruitItem> array)// 超市商品初始化
 14     {
 15         FruitItem fi1 = new FruitItem();
 16         fi1.ID = 10;
 17         fi1.name = "小鸡腿";
 18         fi1.price = 3;
 19         FruitItem fi2 = new FruitItem();
 20         fi2.ID = 11;
 21         fi2.name = "老干妈";
 22         fi2.price = 13.5;
 23         FruitItem fi3 = new FruitItem();
 24         fi3.ID = 12;
 25         fi3.name = "王老吉";
 26         fi3.price = 4;
 27         array.add(fi1);
 28         array.add(fi2);
 29         array.add(fi3);
 30     }
 31 
 32     public static void showFruitList(ArrayList<FruitItem> array)// 库存货物查询
 33     {
 34         System.out.println();
 35         System.out.println("============商品清单============");
 36         System.out.println("商品编号" + "  " + "商品名称" + "  " + "商品单价");
 37         for (int i = 0; i < array.size(); i++) {
 38             FruitItem fi = array.get(i);
 39             System.out.println(fi.ID + "    " + fi.name + "       " + fi.price);
 40         }
 41 
 42     }
 43 
 44     // 添加新货物
 45     public static void addFruitItem(ArrayList<FruitItem> array) {
 46         FruitItem fi = new FruitItem();
 47         Scanner sc = new Scanner(System.in);
 48         System.out.println("请输入新的商品编号");
 49         fi.ID = sc.nextInt();
 50         System.out.println("请输入新的商品名称");
 51         fi.name = sc.next();
 52         System.out.println("输入新商品的价格");
 53         fi.price = sc.nextDouble();
 54         boolean isNew = true;
 55         for (int i = 0; i < array.size(); i++) {
 56             FruitItem fi2 = array.get(i);
 57             if (fi2.ID == fi.ID) {
 58                 isNew = false;
 59                 // array.remove(fi2);
 60                 // array.add(i, fi);
 61                 System.out.println("ID重复,请重新输入");
 62             }
 63         }
 64         if (isNew) {
 65             array.add(fi);
 66         }
 67     }
 68 
 69     public static void delFruitItem(ArrayList<FruitItem> array)// 删除商品
 70     {
 71         System.out.println("选择的是删除商品功能");
 72         System.out.println("请输入商品编号");
 73         Scanner sc = new Scanner(System.in);
 74         int ID = sc.nextInt();
 75         for (int i = 0; i < array.size(); i++) {
 76             FruitItem fi = array.get(i);
 77             if (fi.ID == ID) {
 78                 array.remove(i);
 79                 System.out.println("删除成功");
 80                 return;// 当fi.ID == ID时,就删除了,没必要再循环比下去了,直接结束return
 81             }
 82         }
 83         System.out.println("未找到该商品!");
 84     }
 85 
 86     public static void updateFruitItem(ArrayList<FruitItem> array) {
 87         System.out.println("这是修改功能");
 88         System.out.println("请输入需要修改的商品编号");
 89         Scanner sc = new Scanner(System.in);
 90         int ID = sc.nextInt();
 91         System.out.println("您修改的商品编号为:" + ID);
 92         for (int i = 0; i < array.size(); i++) {
 93             if (array.get(i).ID == ID) {
 94                 System.out.println("请输入新的商品编号");
 95                 array.get(i).ID = sc.nextInt();
 96                 System.out.println("请输入新的商品名称");
 97                 array.get(i).name = sc.next();
 98                 System.out.append("请输入新的商品单价");
 99                 array.get(i).price = sc.nextDouble();
100                 System.out.println("修改成功");
101                 return;// 当编号相等,改商品数据成功后,没必要继续执行下面的输出语句
102             }
103         }
104         System.out.println("您输入的编号不存在");
105     }
106 
107     public static void main(String[] args) {
108         ArrayList<FruitItem> array = new ArrayList<FruitItem>();
109         init(array);
110         Scanner sc = new Scanner(System.in);
111 
112         while (true)// 死循环,一定要保证循环条件有变成false的时候
113         {
114             mainMenu();
115             int i = sc.nextInt();
116             switch (i) {
117             case 1:
118                 showFruitList(array);// 货物清单
119                 break;
120             case 2:
121                 addFruitItem(array);// 添加新货物
122                 break;
123             case 3:
124                 delFruitItem(array);// 删除商品
125                 break;
126             case 4:
127                 updateFruitItem(array);// 修改商品
128                 break;
129             case 5:
130                 System.out.println("退出系统");
131                 return;
132             default:
133                 System.out.println("暂无此功能");
134                 break;
135             }
136 
137         }
138     }
139 }