亲宝软件园·资讯

展开

java实现超市库存管理系统

人气:0

模拟真实的库存管理逻辑,完成超市管理系统的日常功能实现。

经过分析,首先需要一个功能菜单,然后输入所选的功能后,调用序号对应的功能方法,实现想要的操作。

具体的步骤如下:

1.完成超市商品初始化。创建商品,将商品添加到集合

2.显示来到超市能做的操作,也就是显示主菜单

3.根据接收到的功能选项,执行对应的功能

3.1.库存货物查询

3.2.添加新货物

3.3.删除货物

3.4.修改货物

3.5.退出系统,结束main方法的运行

4.循环,回到 2.显示主菜单

具体的代码实现步骤为:

1.每种库存商品都拥有多项商品信息,为了方便管理每种商品的信息,对商品信息进行封装,编写FruitItem.java文件

public class FruitItem {
 // 商品号
 int ID;
 // 商品名字
 String name;
 // 单价
 double price;
 // 数量
 int number;
 // 总金额
 double money;
}

2.编写Shopp.java,完成如下功能:

①主方法  主要实现集合创建、调用商品初始化、调用菜单方法、调用序号选择方法。

public static void main(String[] args) {
 //创建ArrayList集合,存储商品类型,存储数据类型FruitItem类型
 ArrayList<FruitItem> array = new ArrayList<FruitItem>();
 //调用商品初始化方法,传递集合
 init(array);
 while(true){
  //调用菜单方法
  mainMenu();
  //调用用户选择序号方法
  int choose = chooseFunction();
  switch (choose) {
  case 1:
  //调用1: 货物 清单
  showFruitList(array);
  break;
  
  case 2:
  //2: 添加货物
  addFruit(array);
  break;
  
  case 3:
  //3: 删除货物
  deleteFruit(array);
  break;
  
  case 4:
  //4: 修改货物
  updateFruit(array);
  break;
  
  case 5:
  return ;
 
  default:
  System.out.println("输入的序号没有");
  break;
  }
 }
 }

②商品初始化方法。创建方法,将商品添加到集合里去。

public static void init(ArrayList<FruitItem> array){
 //创建出多个FruitItem类型,并且属性赋值
 FruitItem f1 = new FruitItem();
 f1.ID = 9527;
 f1.name = "少林寺酥饼核桃";
 f1.price = 12.7;
 
 FruitItem f2 = new FruitItem();
 f2.ID = 9008;
 f2.name = "尚康杂粮牡丹饼";
 f2.price = 5.6;
 
 FruitItem f3 = new FruitItem();
 f3.ID = 9879;
 f3.name = "新疆原产哈密瓜";
 f3.price = 599.6;
 
 //创建的3个FruitItem类型变量,存储到集合中
 array.add(f1);
 array.add(f2);
 array.add(f3);
 }

③菜单显示方法,也就是显示具体能完成哪些操作。

public static void mainMenu(){
 System.out.println();
 System.out.println("============欢迎光临ItCast超市============");
 System.out.println("1: 货物 清单 2: 添加货物 3: 删除货物 4: 修改货物 5: 退出");
 System.out.println("请您输入要操作的功能序号");
 }

④序号选择方法。 根据接收到的功能选项,执行对应的操作。

public static int chooseFunction(){
 Scanner sc = new Scanner(System.in);
 return sc.nextInt(); 
 }

⑤库存货物查询

public static void showFruitList(ArrayList<FruitItem> array){
 System.out.println();
 System.out.println("================商品库存清单================");
 System.out.println("商品编号  商品名称  商品单价");
 //遍历集合
 for(int i = 0 ; i < array.size(); i++){
 //集合get方法,获取出每个FruitItem变量,可以使用FruitItem接受get结果
 FruitItem item = array.get(i);
 //变量item调用类中属性
 System.out.println(item.ID+" "+item.name+" "+item.price);
 }
 }

⑥添加新货物

public static void addFruit(ArrayList<FruitItem> array){
 System.out.println("选择的是添加商品功能");
 //创建Scanner变量
 Scanner sc = new Scanner(System.in);
 System.out.println("请输入商品的编号");
 //输入商品的编号
 int ID = sc.nextInt();
 //输入商品的名字
 System.out.println("请输入商品的名字");
 String name = sc.next();
 //输入商品的单价
 System.out.println("输入商品的单价");
 double price = sc.nextDouble();
 //创建FruitItem变量
 FruitItem item = new FruitItem();
 //item.属性赋值
 item.ID = ID;
 item.name = name;
 item.price = price;
 array.add(item);
 System.out.println("商品添加成功");
 }

⑦删除货物

public static void deleteFruit(ArrayList<FruitItem> array){
 System.out.println("选择的是删除功能");
 System.out.println("请输入商品的编号");
 Scanner sc = new Scanner(System.in);
 
 int ID = sc.nextInt();
 //遍历集合
 for(int i = 0 ; i < array.size(); i++){
 //获取到每个FruitItem变量
 FruitItem item = array.get(i);
 //变量,调用属性ID,和用户输入的编号比较
 if( item.ID == ID){
 //移除集合中的元素
 //集合的方法remove实现
 array.remove(i);
 System.out.println("删除成功");
 return;
 }
 }
 System.out.println("你输入的编号不存在");
 }

⑧修改货物

public static void updateFruit(ArrayList<FruitItem> array){
 System.out.println("选择的是修改功能");
 System.out.println("请输入商品的编号");
 
 Scanner sc = new Scanner(System.in);
 int ID = sc.nextInt();
 //遍历集合,获取每个FruitItem变量
 for(int i = 0 ; i < array.size(); i++){
 FruitItem item = array.get(i);
 //获取FruitItem的属性ID,和用户输入的ID比较
 if(item.ID == ID){
 System.out.println("输入新的商品编号");
 item.ID = sc.nextInt();
 
 System.out.println("输入新的商品名字");
 item.name = sc.next();
 
 System.out.println("输入新的商品价格");
 item.price = sc.nextDouble();
 System.out.println("商品修改成功");
 return ;
 }
 }
 System.out.println("输入的编号不存在");
 }

至此,基本上完成了各项功能,大概的运行结果为:

您可能感兴趣的文章:

加载全部内容

相关教程
猜你喜欢
用户评论