Java实现库存管理系统

项目需求

       ​​​​​​​某超市位于市场中心,每天都有大量的货物输入与输出,该超市为了解决货物清单等一系问题,需要一些程序员做一个库存管理系统来管理每天超市货物流动问题。

项目环境准备

开发工具:Window10操纵系统、eclipse集成开发环境

开发语言:Java

目录

项目需求

项目环境准备

一、完成步鄹

二、完成代码

三、结果演示

(一)货物清单

 (二)添加货物

 (三)删除货物

 (四)修改货物

 (五)退出系统

四、项目覆盖的技能点


一、完成步鄹


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

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

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

3.1.库存货物查询

3.2.添加新货物

3.3.删除货物

3.4.修改货物

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

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

二、完成代码

package kucun2;
import java.util.ArrayList;
import java.util.Scanner;

//创建一个上商店类
public class Shop {
    //主方法  主要实现集合创建、调用商品初始化、调用菜单方法、调用序号选择方法
    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: 删除货物
                 showFruitList(array);
                 deleteFruit(array);
             break;
          
             case 4:
                 //4: 修改货物
                 showFruitList(array);
                 updateFruit(array);
             break;
                 
             case 5:
                 //5: 退出
                 quit(array) ;
             return;
         
             default:
                 System.out.println("您输入的序号不在列表内");
             break;
             }
         }
    }
    
    //商品初始化方法。创建方法,将商品添加到集合里去。
    public static void init(ArrayList<FruitItem> array){
         //创建出多个FruitItem类型,并且属性赋值
         FruitItem f1 = new FruitItem();
         f1.ID = 10001;  //编号
         f1.name = "水密桃";
         f1.price = 12.7;  //价格
         
         FruitItem f2 = new FruitItem();
         f2.ID = 10002;
         f2.name = "西瓜";
         f2.price = 12;
         
         FruitItem f3 = new FruitItem();
         f3.ID = 10003;
         f3.name = "哈密瓜";
         f3.price = 50.6;
         
         //创建的3个FruitItem类型变量,存储到集合中
         array.add(f1);
         array.add(f2);
         array.add(f3);
         }
    //主菜单
    public static void mainMenu(){
         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("5: 退出系统");
         System.out.println("============================================");
         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("商品编号"+"\t"+"商品名称"+"\t"+"商品单价");
         //遍历集合
         for(int i = 0 ; i < array.size(); i++){
             
             //集合get方法,获取出每个FruitItem变量,可以使用FruitItem接受get结果
             FruitItem item = array.get(i);
             //变量item调用类中属性
             System.out.println(item.ID+"\t"+item.name+"\t"+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();
         while (price < 0) {
               
             System.out.println("您输入的商品价格不合法,请您再次输入:");
             price = sc.nextInt();
         }
         //创建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();
             while (item.price < 0) {
               
                 System.out.println("您输入的商品价格不合法,请您再次输入:");
                 item.price= sc.nextInt();
             }
             System.out.println("商品修改成功");
             return ;
         }
         }
         
         System.out.println("您输入的编号不存在");
         }
    //退出系统
    public static void quit(ArrayList<FruitItem> array){
        System.out.println("您已退出库存系统,欢迎下次使用······");
    }
}

三、结果演示

 

(一)货物清单

 (二)添加货物

 (三)删除货物

 (四)修改货物

 (五)退出系统

四、项目覆盖的技能点

程序基本概念:程序、变量、数据类型、集合
流程控制:顺序、选择、循环、跳转语句

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

  • 11
    点赞
  • 118
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青枫浦上看桃花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值