java实现超市商品库存管理平台

 更新时间:2019年10月25日 16:18:14   作者:超级圈  
这篇文章主要为大家详细介绍了java实现超市商品库存管理平台,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java商品库存管理平台的具体代码,供大家参考,具体内容如下

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("对不起,没有这个编号的商品。");
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Java中的位运算符全解

    Java中的位运算符全解

    这篇文章主要为大家详细介绍了Java中的位运算符,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • 解决java web应用线上系统偶发宕机的情况

    解决java web应用线上系统偶发宕机的情况

    这篇文章主要介绍了解决java web应用线上系统偶发宕机的情况,具有好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • jsp、struts、spring、mybatis实现前端页面功能模块化拆分的方案

    jsp、struts、spring、mybatis实现前端页面功能模块化拆分的方案

    这篇文章主要介绍了 jsp、struts、spring、mybatis实现前端页面功能模块化拆分的方案,非常不错,需要的朋友参考下
    2017-01-01
  • Java int类型如何获取高低位

    Java int类型如何获取高低位

    这篇文章主要介绍了Java int类型如何获取高低位,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Maven打包的三种方式小结

    Maven打包的三种方式小结

    这篇文章给大家介绍了三种Maven打包的方式,使用maven-jar-plugin,使用maven-assembly-plugin和使用maven-shade-plugin这三种方式,通过代码介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • 通过jstack分析解决进程死锁问题实例代码

    通过jstack分析解决进程死锁问题实例代码

    这篇文章主要介绍了通过jstack分析解决进程死锁问题实例代码,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Java模拟微信来电提醒示例

    Java模拟微信来电提醒示例

    这篇文章主要为大家介绍了Java模拟微信来电提醒示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • ibatis学习之搭建Java项目

    ibatis学习之搭建Java项目

    本文的主要内容是简单介绍了ibatis和如何通过iBatis搭建JAVA项目,包含了一个相关实例,需要的朋友可以参考下。
    2017-09-09
  • Java中比较抽象类与接口的异同

    Java中比较抽象类与接口的异同

    大家好,本篇文章主要讲的是Java中比较抽象类与接口的异同,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • 如何理解Java的跨平台特性操作

    如何理解Java的跨平台特性操作

    这篇文章主要介绍了如何理解Java的跨平台特性操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08

最新评论