1.完成超市商品初始化。建立商品,将商品添加到集合
2.顯示來到超市能做的操作,也就是顯示主菜單
3.根據接收到的功能選項,執行對應的功能
3.1.庫存商品查詢
3.2.添加新商品
3.3.删除商品
3.4.修改商品
3.5.退出系統,結束main方法的運作
4.循環,回到 2. 顯示主菜單
以添加水果為例:對商品資訊進行封裝,編寫FruitItem.java檔案
public class FruitItem {
int ID; //商品的ID
String name; //商品的名稱
double price; //商品的單價
}
編寫market.java,完成功能:
public class market {
public static void main(String[] args) {
System.out.println("=========系統開始!=========");
ArrayList<FruitItem> list = new ArrayList<>();
//調用商品初始化方法,傳遞集合
init(list);
while (true) {
//列印菜單
mainMenu();
//功能選擇
chooseFun(list);
}
}
//商品初始化
public static void init(ArrayList<FruitItem> list) {
FruitItem item1 = new FruitItem();
item1.ID = 001;
item1.name = "柚子";
item1.price = 5.0;
FruitItem item2 = new FruitItem();
item2.ID = 002;
item2.name = "芒果";
item2.price = 8.8;
FruitItem item3 = new FruitItem();
item3.ID = 003;
item3.name = "橙子";
item3.price = 6.6;
list.add(item1);
list.add(item2);
list.add(item3);
}
//列印菜單
public static void mainMenu() {
System.out.println("========= 歡迎光臨超市 ========");
System.out.println("1:查詢貨物 2:添加貨物 3:删除貨物 4:修改貨物 5:退出");
}
//功能選擇
public static void chooseFun(ArrayList<FruitItem> list) {
Scanner sc = new Scanner(System.in);
System.out.print("輸入您選擇的功能:");
int choose = sc.nextInt();
switch (choose) {
case 1:// 庫存查詢
showList(list);
break;
case 2:// 添加庫存
addList(list);
break;
case 3:// 删除商品
delList(list);
break;
case 4:// 修改商品
editList(list);
break;
case 5: // 退出系統
System.out.println("退出系統");
return;
default:
System.out.println("對不起,沒有您輸入的功能,請重新選擇");
break;
}
}
//庫存查詢
public static void showList(ArrayList<FruitItem> list) {
System.out.println("=============商品庫存清單=============");
System.out.println("商品編号\t商品名稱\t商品單價");
for (int i = 0; i < list.size(); i++) {
FruitItem item = list.get(i);
System.out.println(item.ID +"\t\t"+item.name + "\t\t" + item.price);
}
}
//添加庫存
public static void addList(ArrayList<FruitItem> list) {
FruitItem item = new FruitItem();
Scanner sc = new Scanner(System.in);
System.out.print("請輸入商品編号:");
item.ID = sc.nextInt();
System.out.print("請輸入商品名稱:");
item.name = sc.next();
System.out.print("請輸入商品價格:");
item.price = sc.nextDouble();
list.add(item);
}
//删除商品
public static void delList(ArrayList<FruitItem> list) {
Scanner sc = new Scanner(System.in);
System.out.print("請輸入需要删除商品的編号");
int num = sc.nextInt();
for (int i = 0; i < list.size(); i++) {
FruitItem item = list.get(i);
if (item.ID == num) {
list.remove(item);
return;
}
}
System.out.println("對不起,沒有這個編号的商品。");
}
//修改商品
public static void editList(ArrayList<FruitItem> list) {
Scanner sc = new Scanner(System.in);
System.out.print("請輸入要修改商品的編号:");
int num = sc.nextInt();
for (int i = 0; i < list.size(); i++) {
FruitItem item = list.get(i);
if (item.ID == num) {
System.out.print("請輸入新的商品ID:");
item.ID = sc.nextInt();
System.out.print("請輸入新的商品名稱:");
item.name = sc.next();
System.out.print("請輸入新的商品單價:");
item.price = sc.nextDouble();
System.out.println("商品資訊更新完畢!");
return;
}
}
System.out.println("對不起,沒有這個編号的商品。");
}
}