当前位置:   article > 正文

Java实现库存管理系统_java库存管理系统

java库存管理系统

项目需求

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

项目环境准备

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

开发语言:Java

目录

项目需求

项目环境准备

一、完成步鄹

二、完成代码

三、结果演示

(一)货物清单

 (二)添加货物

 (三)删除货物

 (四)修改货物

 (五)退出系统

四、项目覆盖的技能点


一、完成步鄹


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

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

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

3.1.库存货物查询

3.2.添加新货物

3.3.删除货物

3.4.修改货物

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

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

二、完成代码

  1. package kucun2;
  2. import java.util.ArrayList;
  3. import java.util.Scanner;
  4. //创建一个上商店类
  5. public class Shop {
  6.     //主方法  主要实现集合创建、调用商品初始化、调用菜单方法、调用序号选择方法
  7.     public static void main(String[] args) {
  8.         
  9.          //创建ArrayList集合,存储商品类型,存储数据类型FruitItem类型
  10.          ArrayList<FruitItem> array = new ArrayList<FruitItem>();
  11.          //调用商品初始化方法,传递集合
  12.          init(array);
  13.          while(true){
  14.              
  15.              //调用菜单方法
  16.              mainMenu();
  17.              //调用用户选择序号方法
  18.              int choose = chooseFunction();
  19.              switch (choose) {
  20.              case 1:
  21.                  
  22.                  //调用1: 货物清单
  23.                  showFruitList(array);
  24.              break;
  25.           
  26.              case 2:
  27.                  //2: 添加货物
  28.                  addFruit(array);
  29.              break;
  30.           
  31.              case 3:
  32.                  //3: 删除货物
  33.                  showFruitList(array);
  34.                  deleteFruit(array);
  35.              break;
  36.           
  37.              case 4:
  38.                  //4: 修改货物
  39.                  showFruitList(array);
  40.                  updateFruit(array);
  41.              break;
  42.                  
  43.              case 5:
  44.                  //5: 退出
  45.                  quit(array) ;
  46.              return;
  47.          
  48.              default:
  49.                  System.out.println("您输入的序号不在列表内");
  50.              break;
  51.              }
  52.          }
  53.     }
  54.     
  55.     //商品初始化方法。创建方法,将商品添加到集合里去。
  56.     public static void init(ArrayList<FruitItem> array){
  57.          //创建出多个FruitItem类型,并且属性赋值
  58.          FruitItem f1 = new FruitItem();
  59.          f1.ID = 10001;  //编号
  60.          f1.name = "水密桃";
  61.          f1.price = 12.7;  //价格
  62.          
  63.          FruitItem f2 = new FruitItem();
  64.          f2.ID = 10002;
  65.          f2.name = "西瓜";
  66.          f2.price = 12;
  67.          
  68.          FruitItem f3 = new FruitItem();
  69.          f3.ID = 10003;
  70.          f3.name = "哈密瓜";
  71.          f3.price = 50.6;
  72.          
  73.          //创建的3个FruitItem类型变量,存储到集合中
  74.          array.add(f1);
  75.          array.add(f2);
  76.          array.add(f3);
  77.          }
  78.     //主菜单
  79.     public static void mainMenu(){
  80.          System.out.println();
  81.          System.out.println("============欢迎光临清风库存管理系统============");
  82.          System.out.println("1: 货物清单 ");
  83.          System.out.println("2: 添加货物");
  84.          System.out.println("3: 删除货物");
  85.          System.out.println("4: 修改货物");
  86.          System.out.println("5: 退出系统");
  87.          System.out.println("============================================");
  88.          System.out.println("请您输入要操作的功能序号:");
  89.          }
  90.     
  91.     //序号选择
  92.     public static int chooseFunction(){
  93.          Scanner sc = new Scanner(System.in);
  94.          return sc.nextInt(); 
  95.          }
  96.     
  97.     //库存货物查询
  98.     public static void showFruitList(ArrayList<FruitItem> array){
  99.          System.out.println();
  100.          System.out.println("----------商品库存清单----------");
  101.          System.out.println("商品编号"+"\t"+"商品名称"+"\t"+"商品单价");
  102.          //遍历集合
  103.          for(int i = 0 ; i < array.size(); i++){
  104.              
  105.              //集合get方法,获取出每个FruitItem变量,可以使用FruitItem接受get结果
  106.              FruitItem item = array.get(i);
  107.              //变量item调用类中属性
  108.              System.out.println(item.ID+"\t"+item.name+"\t"+item.price);
  109.          }
  110.      }
  111.     
  112.     //添加新货物
  113.     public static void addFruit(ArrayList<FruitItem> array){
  114.         
  115.          System.out.println("您选择的是添加商品功能");
  116.          //创建Scanner变量
  117.          Scanner sc = new Scanner(System.in);
  118.          System.out.println("请您输入商品的编号:");
  119.          //输入商品的编号
  120.          int ID = sc.nextInt();
  121.          //输入商品的名字
  122.          System.out.println("请输入商品的名字");
  123.          String name = sc.next();
  124.          //输入商品的单价
  125.          System.out.println("输入商品的单价");
  126.          double price = sc.nextDouble();
  127.          while (price < 0) {
  128.                
  129.              System.out.println("您输入的商品价格不合法,请您再次输入:");
  130.              price = sc.nextInt();
  131.          }
  132.          //创建FruitItem变量
  133.          FruitItem item = new FruitItem();
  134.          //item.属性赋值
  135.          item.ID = ID;
  136.          item.name = name;
  137.          item.price = price;
  138.          array.add(item);
  139.          System.out.println("商品添加成功");
  140.     }
  141.     //删除货物
  142.     public static void deleteFruit(ArrayList<FruitItem> array){
  143.          System.out.println("您选择的是删除功能");
  144.          System.out.println("请您输入商品的编号");
  145.          Scanner sc = new Scanner(System.in);
  146.         
  147.          int ID = sc.nextInt();
  148.          //遍历集合
  149.          for(int i = 0 ; i < array.size(); i++){
  150.              
  151.              //获取到每个FruitItem变量
  152.              FruitItem item = array.get(i);
  153.              //变量,调用属性ID,和用户输入的编号比较
  154.              if( item.ID == ID){
  155.                  
  156.                  //移除集合中的元素
  157.                  //集合的方法remove实现
  158.         
  159.                  array.remove(i);
  160.                  System.out.println("删除成功");
  161.                  return;
  162.              }
  163.          }
  164.          System.out.println("你输入的编号不存在");
  165.          }
  166.     //修改货物
  167.     public static void updateFruit(ArrayList<FruitItem> array){
  168.          System.out.println("您选择的是修改功能");
  169.          System.out.println("请您输入商品的编号:");
  170.          
  171.          Scanner sc = new Scanner(System.in);
  172.          int ID = sc.nextInt();
  173.          //遍历集合,获取每个FruitItem变量
  174.          for(int i = 0 ; i < array.size(); i++){
  175.              FruitItem item = array.get(i);
  176.              //获取FruitItem的属性ID,和用户输入的ID比较
  177.         
  178.          if(item.ID == ID){
  179.              //
  180.              System.out.println("输入新的商品编号:");
  181.              item.ID = sc.nextInt();
  182.              
  183.          
  184.              System.out.println("输入新的商品名字:");
  185.              item.name = sc.next();
  186.          
  187.              System.out.println("输入新的商品价格:");
  188.              item.price = sc.nextDouble();
  189.              while (item.price < 0) {
  190.                
  191.                  System.out.println("您输入的商品价格不合法,请您再次输入:");
  192.                  item.price= sc.nextInt();
  193.              }
  194.              System.out.println("商品修改成功");
  195.              return ;
  196.          }
  197.          }
  198.          
  199.          System.out.println("您输入的编号不存在");
  200.          }
  201.     //退出系统
  202.     public static void quit(ArrayList<FruitItem> array){
  203.         System.out.println("您已退出库存系统,欢迎下次使用······");
  204.     }
  205. }

三、结果演示

 

(一)货物清单

 (二)添加货物

 (三)删除货物

 (四)修改货物

 (五)退出系统

四、项目覆盖的技能点

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/457425
推荐阅读
相关标签
  

闽ICP备14008679号