java超市管理系統實戰
是一個控制檯版本的系統。主要是複習一下面向物件
測試類 如下
//測試(執行)類
public class MainFrame {
public static void main(String[] args) {
//例項化系統物件
Shop shop = new Shop();
}
}
商品類如下
//貨物資訊類
public class Food {
//商品ID
private int ID;
//商品名稱
private String name;
//商品單價
private double price;
//商品數量
private double number;
//商品金額
private double money;
public int getID() {
return ID;
}
public void setID(int iD) {
ID = iD;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public double getNumber() {
return number;
}
public void setNumber(double number) {
this.number = number;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
}
系統類如下
import java.util.ArrayList;
import java.util.Scanner;
import java.util.function.DoubleUnaryOperator;
/*
* 超市管理系統:功能介紹
* 根據提示仙則不同的功能
* 根據選擇進行商品的增:insert 刪:delete 改:update 查:select
*/
public class Shop {
// 使用 ArrayList對商品進行儲存
ArrayList<Food> arrayList = new ArrayList<Food>();
// 構造方法(啟動例項)
public Shop() {
init(arrayList);
// 呼叫選單功能方法
System.out.println("========================歡迎進入虎虎超市管理系統=======================");
while (true) {
print();
System.out.println("輸入你要執行的操作");
Scanner scanner = new Scanner(System.in);
int input = scanner.nextInt();
switch (input) {
case 1:
select(arrayList);
break;
case 2:
insert(arrayList);
break;
case 3:
update(arrayList);
break;
case 4:
delete(arrayList);
break;
case 5:
System.out.println("=========================歡迎下次使用,再見!=========================");
return;
default:
System.out.println("輸入正確的選項!!!");
break;
}
}
}
// 列印選單選項方法
public void print() {
System.out.print("1.檢視商品");
System.out.print("2.新增商品");
System.out.print("3.修改商品");
System.out.print("4.刪除商品");
System.out.print("5.退出系統");
System.out.println();
}
/*
* 預設系統開啟現存兩商品
*/
public void init(ArrayList<Food> arraylist) {
//例項化一個物件,並封裝資料
Food f1 = new Food();
f1.setID(1);
f1.setName("雞蛋");
f1.setPrice(2);
f1.setNumber(10);
f1.setMoney(20);
Food f2 = new Food();
f2.setID(2);
f2.setName("火腿");
f2.setPrice(5);
f2.setNumber(10);
f2.setMoney(50);
arrayList.add(f1);
arrayList.add(f2);
}
// 檢視選單
public void select(ArrayList<Food> arrayList) {
System.out.println("======商品清單如下=======");
System.out.println("商品編號 " + "商品名稱 " + "商品單價 " + "商品數量 " + "商品總價");
for (int i = 0; i < arrayList.size(); i++) {
Food food = arrayList.get(i);
System.out.println(food.getID() + " " + food.getName() + " " + food.getPrice() + " " + food.getNumber()
+ " " + food.getMoney());
}
}
/*
* 新增商品方法 引數:arryList 無返回值
*/
public void insert(ArrayList<Food> arrayList) {
System.out.println("======商品新增操作=======");
System.out.println("請輸入商品編號");
// 鍵盤接受輸入的資料
int id = new Scanner(System.in).nextInt();
System.out.println("請輸入商品名稱");
String name = new Scanner(System.in).next();
System.out.println("請輸入商品價格");
double price = new Scanner(System.in).nextDouble();
System.out.println("請輸入商品數量");
double number = new Scanner(System.in).nextDouble();
// 例項化一個商品物件儲存資料
Food food = new Food();
food.setID(id);
food.setName(name);
food.setPrice(price);
food.setNumber(number);
food.setMoney(price * number);
// 把food物件儲存到陣列中
arrayList.add(food);
System.out.println("商品新增成功");
}
/*
* 修改選單 引數:arraylist 無返回值
*/
public void update(ArrayList<Food> arrayList) {
System.out.println("======商品修改操作=======");
System.out.println("輸入要修改的商品編號");
int id = new Scanner(System.in).nextInt();
// 遍歷陣列
for (int i = 0; i < arrayList.size(); i++) {
Food food = arrayList.get(i);
if (food.getID() == id) {
//錄入新的商品
System.out.println("輸入新商品的編號");
int newId = new Scanner(System.in).nextInt();
System.out.println("輸入新商品的名稱");
String newName = new Scanner(System.in).next();
System.out.println("輸入新商品的單價");
double newPrice = new Scanner(System.in).nextDouble();
System.out.println("輸入新商品的數量");
double newNumber = new Scanner(System.in).nextDouble();
// 封裝成物件
food.setID(newId);
food.setName(newName);
food.setPrice(newPrice);
food.setNumber(newNumber);
food.setMoney(newNumber * newPrice);
// 把物件儲存到陣列中
arrayList.add(food);
//把要修改的刪除
arrayList.remove(id);
System.out.println("修改成功");
return;
}
}
System.out.println("不存在此編號的商品");
}
/*
* 刪除功能
* 引數 arrayList
* 返回值 無返回值
*/
public void delete(ArrayList<Food> arrayList) {
System.out.println("======商品刪除操作=======");
System.out.println("輸入要刪除的商品編號");
//接受鍵盤輸入的數字
int id = new Scanner(System.in).nextInt();
//遍歷
for(int i=1;i<arrayList.size();i++){
//取出當前的物件
Food food = arrayList.get(i);
//判斷輸入的編號與已經存在的商品編號是否匹配
if(food.getID()==id){
arrayList.remove(i);
System.out.println("成功刪除商品");
return;
}
}
System.out.println("輸入的商品不存在");
}
}