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

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

相关文章

  • Spring中的Aware接口及应用场景详解

    Spring中的Aware接口及应用场景详解

    这篇文章主要介绍了Spring中的Aware接口及应用场景,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • 关于SpringBoot拦截器中Bean无法注入的问题

    关于SpringBoot拦截器中Bean无法注入的问题

    这两天遇到SpringBoot拦截器中Bean无法注入问题。下面介绍关于SpringBoot拦截器中Bean无法注入的问题,感兴趣的朋友一起看看吧
    2021-10-10
  • SpringBoot2.x过后static下的静态资源无法访问的问题

    SpringBoot2.x过后static下的静态资源无法访问的问题

    这篇文章主要介绍了SpringBoot2.x过后static下的静态资源无法访问的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • Java后端Tomcat实现WebSocket实例教程

    Java后端Tomcat实现WebSocket实例教程

    WebSocket protocol 是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-duplex)。一开始的握手需要借助HTTP请求完成握手。本文给大家介绍Java后端Tomcat实现WebSocket实例教程,感兴趣的朋友一起学习吧
    2016-05-05
  • Java中Calendar时间操作常用方法详解

    Java中Calendar时间操作常用方法详解

    这篇文章主要为大家详细介绍了Java中Calendar时间操作常用方法,calendar中set方法和静态属性带来的一些坑,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • Spring事务管理配置文件问题排查

    Spring事务管理配置文件问题排查

    这篇文章主要介绍了Spring事务管理配置文件问题排查,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • 如何使用JWT的SpringSecurity实现前后端分离

    如何使用JWT的SpringSecurity实现前后端分离

    这篇文章主要介绍了使用JWT的SpringSecurity实现前后端分离,登录成功需要返回json数据登录失败需要返回json数据权限不足时返回json数据未登录访问资源返回json数据,需要的朋友可以参考下
    2024-08-08
  • Java输入处理的常见错误小结

    Java输入处理的常见错误小结

    在 Java 编程中,输入处理是一个基础但又复杂的任务,尤其是在涉及到与用户交互时,本文将对 Java 输入处理的基本机制进行详细解析,需要的可以了解下
    2024-11-11
  • Spring注解与P/C命名空间超详细解析

    Spring注解与P/C命名空间超详细解析

    Spring注解方式减少了配置文件内容,更加便于管理,并且使用注解可以大大提高了开发效率!注解本身是没有功能的,和xml一样,注解和xml都是一种元数据,元数据即解释数据的数据,也就是所谓的配置
    2022-11-11
  • 详解Java继承中属性、方法和对象的关系

    详解Java继承中属性、方法和对象的关系

    这篇文章主要帮助大家详细介绍了Java继承中属性、方法和对象的关系,感兴趣的朋友可以参考一下
    2016-03-03

最新评论