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

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

(0)

相关推荐

  • JAVAEE model1模型实现商品浏览记录(去除重复的浏览记录)(一)

    在javaee中Model1模型是以jsp页面为中心的,jsp既要对浏览器的request做出逻辑处理(使用javabean),访问数据库也要显示出相关的页面. 在model1模型中,没有servlet. Model1结果图如下: Model1的可维护性  可扩展性都是较差的  只适合小项目. 首先运行结果 goods.jsp <%@page import="entity.Items"%> <%@page import="dao.ItemsDao"

  • Java实现商品的查找、添加、出库、入库操作完整案例

    本文实例讲述了Java实现商品的查找.添加.出库.入库操作.分享给大家供大家参考,具体如下: package com.jredu.oopch08; public class Goods1 { private int id; private String name; private double price; private String uom; private int balance; public Goods1(int id, String name, double price, Strin

  • Java基于JDBC实现事务,银行转账及货物进出库功能示例

    本文实例讲述了Java基于JDBC实现事务,银行转账及货物进出库功能.分享给大家供大家参考,具体如下: 1. 转账业务 转账必须执行2个sql语句(update更新)都成功的情况下,提交事务,如果有一个失败,则2个都回滚事务 2. 事务应该具有4个属性:原子性.一致性.隔离性.持久性.这四个属性通常称为ACID特性. ① 原子性(atomicity).一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做. ② 一致性(consistency).事务必须是使数据库从一个一致性状

  • java实现商品管理系统

    本文实例为大家分享了java实现商品管理系统的具体代码,供大家参考,具体内容如下 功能要求: 完成"小商品管理系统"的架构设计 要求:利用集合存储若干商品对象 ----小商品管理系统---- 0. 退出 1. 录入商品基本信息 2. 显示商品信息 3. 商品入库(增加数量) 4. 商品出库(减少数量) 5. 修改商品价格 6. 所有产品的总价格(单价*数量) import java.util.ArrayList; import java.util.Scanner; public cla

  • java+mysql实现商品抢购功能

    我们希望有人购买时检查商品数量是否足够,如果库存有剩余那么就让用户购买成功,之后变更库存,假如用户排队挨个购买这样当然没有问题. 可是实际情况下,可能是用户多个用户同时来购买,同时检查库存,这是可能库存仅够其中一人购买,但是由于库存还没减掉,就会出现几个人都购买成功,然后库存减为负数出现超卖的情况.这在大量用户在同一时间点同时购买时极可能出现. 于是我们调整一下顺序,有用户购买时我们先减掉库存,那你肯定要问,怎么减?库存不够一个人的时候也减? 我们假设每份商品有一个唯一的购买码(开始抢购前预先生

  • Java使用策略模式解决商场促销商品问题示例

    本文实例讲述了Java使用策略模式解决商场促销商品问题.分享给大家供大家参考,具体如下: 一 模式定义 策略模式:定义一系列的算法,将每一种算法封装起来并可以相互替换使用,策略模式让算法独立于使用它的客户应用而独立变化. 二 模式举例 1 模式分析 我们借用商场促销商品来说明这一模式. 2 策略模式静态类图 3 代码示例 3.1 创建策略接口一IStrategy package com.demo.strategy; /** * 策略接口 * * @author * */ public inter

  • java实现商品信息管理系统

    超市商品管理系统,供大家参考,具体内容如下 题目要求 超市中商品分为四类,分别是食品.化妆品.日用品和饮料.每种商品都包含商品名称.价格.库存量和生产厂家.品牌等信息.主要完成对商品的销售.统计和简单管理.这个题目相对简单,可以用一张表实现信息的保存和处理,因此不再给出数据库设计参考. 功能要求 (1)销售功能. 购买商品时,先输入类别,然后输入商品名称,并在库存中查找该商品的相关信息.如果有库存量,输入购买的数量,进行相应计算.如果库存量不够,给出提示信息,结束购买. (2)商品简单管理功能.

  • JavaWeb实现简单查询商品功能

    本文实例为大家分享了JavaWeb实现简单查询商品功能的具体代码,供大家参考,具体内容如下 CustomerServlet.java package com.subing.web; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet

  • java使用hadoop实现关联商品统计

    最近几天一直在看Hadoop相关的书籍,目前稍微有点感觉,自己就仿照着WordCount程序自己编写了一个统计关联商品. 需求描述: 根据超市的销售清单,计算商品之间的关联程度(即统计同时买A商品和B商品的次数). 数据格式: 超市销售清单简化为如下格式:一行表示一个清单,每个商品采用 "," 分割,如下图所示: 需求分析: 采用hadoop中的mapreduce对该需求进行计算. map函数主要拆分出关联的商品,输出结果为 key为商品A,value为商品B,对于第一条三条结果拆分结

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

    本文实例为大家分享了java商品库存管理平台的具体代码,供大家参考,具体内容如下 1.完成超市商品初始化.创建商品,将商品添加到集合 2.显示来到超市能做的操作,也就是显示主菜单 3.根据接收到的功能选项,执行对应的功能 3.1.库存商品查询 3.2.添加新商品     3.3.删除商品 3.4.修改商品 3.5.退出系统,结束main方法的运行 4.循环,回到  2. 显示主菜单 以添加水果为例:对商品信息进行封装,编写FruitItem.java文件 public class FruitIt

  • Tomcat管理平台_动力节点Java学院整理

    我们可能会将很多web应用交给Tomcat,那么Tomcat服务器就要对我们这些载入的web应用进行管理,那么从哪里进入Tomcat服务器的管理平台呢?首先我们将Tomcat服务器启动,进入其主页,发现右侧三项"Server Status"."Manager App"."Host Manager"点击时都需要输入密码: 需要密码 那么用户名和密码是什么呢? 这就要看Tomcat的[conf]目录中的[tomcat-users.xml]文件了,这个

  • 快速搭建python爬虫管理平台

    爬虫有多重要 对搜索引擎来说,爬虫不可或缺:对舆情公司来说,爬虫是基础:对 NLP来说,爬虫可以获取语料:对初创公司来说,爬虫可以获取初始内容.但是爬虫技术纷繁复杂,不同类型的抓取场景会运用到不同的技术.例如,简单的静态页面可以用 HTTP 请求+HTML 解析器直接搞定:一个动态页面需要用 Puppeteer 或 Selenium等自动化测试工具:有反爬的网站需要用到代理.打码等技术:等等.那么此时就需要一个成熟的爬虫管理平台,帮助企业或个人处理大量的爬虫类别. 理解什么是爬虫管理平台 定义

  • 基于Mysql+JavaSwing的超市商品管理系统设计与实现

    目录 2.关键代码 2.1 主页功能 2.2 添加商品信息 2.3 数据库设计 商品表 前言: 随着小超市规模的发展不断扩大, 商品数量急剧增加, 有关商品的各种信息量也成倍增长. 超市时时刻刻都需要对商品各种信息进行统计分析. 而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率. 超市管理系统是市场上最流行的超市上常用的系统之一, 由于刚学Java知识.所有功能设计的比较简单.只有商品信息的增删改查.实现对商品信息全面. 动态.及时的管理.本文系统的分析了软件开发的背景以过程

  • Rancher部署配置开源Rainbond云原生应用管理平台

    目录 前言 前提条件 开始安装 添加 Rainbond Operator 到应用商店 安装 Rainbond Operator 访问 Rainbond 安装 UI,完善集群配置 基于 Rancher 的 Rainbond 运维参考 查看 Rainbond 各组件运行状态与日志 按需扩容 Rainbond 各组件 Rancher用户使用Rainbond优势 参考视频 常见问题 前言 本文适用于正在使用 Rancher 或对 Rancher 有所了解的用户 Rancher,Kubernetes 生态

  • Qt物联网管理平台之实现自动清理早期数据功能

    目录 一.前言 二.功能特点 2.1 软件模块 2.2 基础功能 2.3 特色功能 三.体验地址 四.效果图 五.相关代码 一.前言 随着时间的增加,存储的历史记录也在不断增加,如果设备数量很多,存储间隔很短,不用多久,数据库中的记录就非常多,至少是百万级别起步,而且有些用户还是需要存储每一次的采集的数据,这数据量别说一年,就是一个月下来都是恐怖级别的,所以这就涉及到一个重要的需求,如何自动清理早期的不需要的数据,比如只保存最近10万条记录,或者保存最近30天的记录,这就需要安排个线程,在线程中

  • Qt物联网管理平台之实现数据查询导出打印

    目录 一.前言 二.功能特点 三.体验地址 四.效果图 五.相关代码 一.前言 本系统存储的三大类记录,运行日志.报警日志.用户日志,这些不同类似的记录,都需要提供查询功能,可以按照记录的时间范围等条件查询,查询的记录需要做分页显示,为了分页显示还特意花了很多时间专门封装了一个通用分页控件,分两部分,一部分专门的分页UI展示,显示页码,可以单击页码直接跳转到对应页,也可以直接数码页码跳转,还可以上一页.下一页.第一页.末一页按钮跳转.一部分是分页功能,专门按照不同的数据库组合sql分页语句查询.

  • Qt物联网管理平台之实现告警短信转发

    目录 一.前言 二.功能特点 四.效果图 五.相关代码 一.前言 系统在运行过程中,会实时采集设备的数据,当采集到的数据发生报警后,可以将报警信息以短信的形式发送给指定的管理员(可以是多个),这样管理员就算不在现场,也能第一时间知道哪里发生了报警,可以紧急赶往现场处置.很多时候软件都是放在现场电脑上运行的,未必现场有人员一直盯着看,通过短信的形式,第一时间送达关键人员那里,及时响应,不错过任何一次重大报警信息,可以在后台设定过滤哪些设备产生的报警需要第一时间送达,还可以设置短信发送的间隔,多个接

  • 什么是OpenStack 开源的云计算管理平台项目

    OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作.OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单.可大规模扩展.丰富.标准统一的云计算管理平台.OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成. OpenStack是一个旨在为公共及私

  • 基于vue.js快速搭建图书管理平台

    Vue.js是当下很火的一个JavaScript MVVM(Model-View-ViewModel)库,它是以数据驱动和组件化的思想构建的.相比于Angular.js,Vue.js提供了更加简洁.更易于理解的API,使得我们能够快速地上手并使用Vue.js. 上一期简单讲解了vue的基本语法,这一次我们做一个小项目,搭建一个简单的图书管理平台,能够让我们更深刻的理解这门语言的妙用. 1.DEMO样式 首先我们需要搭建一个简单的demo样式,推荐大家使用bootstrap,可以很快的搭建出一个清

随机推荐