超市库存java管理系统_Java案例:超市库存管理系统
案例介绍:
模拟真实的库存管理逻辑,完成超市管理系统的日常功能实现,见下图
案例需求分析:
根据案例介绍,我们进行分析,首先需要一个功能菜单,然后输入功能序号后,调用序号对应的功能方法,实现想要的操作。分析步骤如下
1.完成超市商品初始化。创建商品,将商品添加到集合
2.显示来到超市能做的操作,也就是显示主菜单
3.根据接收到的功能选项,执行对应的功能
3.1.库存货物查询
3.2.添加新货物
3.3.删除货物
3.4.修改货物
3.5.退出系统,结束main方法的运行
4.循环,回到 2.显示主菜单
实现代码步骤:
每种库存商品都拥有多项商品信息,为了方便管理每种商品的信息,我们对商品信息进行封装,编写FruitItem.java文件
public classFruitItem {int ID; //商品编号
String name;//商品名称
double price; //商品单价
}
上述代码中,对商品信息(编号、名称、单价、数量、金额)进行了封装。这样做的好处在于以后只要找到这个商品,就能够知道该商品的每项信息了。
编写FruitStore.java,完成如下功能:
//编写main主方法
public static voidmain(String[] args) {//定义数组,记录每个商品信息
ArrayList list = new ArrayList();/** 1.超市商品初始化*/init(list);while(true){/** 2.显示主菜单*/mainMenu();/** 3.根据接收到的功能选项,执行对应的功能*/chooseFunction(list);
}
}
上述代码中,通过while(true)循环,完成用户调用不同功能。实现重复功能选择操作。
1.超市商品初始化,创建商品,将商品添加到集合
public static void init(ArrayListlist) {
FruitItem item= newFruitItem();
item.name= "少林寺酥饼核桃";
item.ID= 9001;
item.price= 120.0;
FruitItem item2= newFruitItem();
item2.name= "尚康杂粮牡丹饼";
item2.ID= 9002;
item2.price= 20.0;
FruitItem item3= newFruitItem();
item3.name= "新疆原产哈密瓜";
item3.ID= 9003;
item3.price= 7.0;
list.add(item);
list.add(item2);
list.add(item3);
}
上述代码中,完成商品集合的初始化操作,添加了3件商品。
2.显示来到超市能做的操作,也就是显示主菜单
public static voidmainMenu() {
System.out.println("=========================欢迎光临itcast超市=========================");
System.out.println("1:查询货物 2:添加新货物 3:删除货物 4:修改货物");
System.out.println("5:退出系统");
}
上述代码,用来完成用户操作界面的显示。
3.根据接收到的功能选项,执行对应的功能
public static void chooseFunction(ArrayListlist) {
System.out.println("请您输入要操作的功能序号:");
Scanner sc= new Scanner(System.in);//键盘输入对象
String choose=sc.next();//根据接收到的选择,执行对应的功能
switch(choose) {case "1": //3.1.库存货物查询
showFruitList(list);break;case "2": //3.2.添加新货物
addFruitItem(list);break;case "3": //3.3.删除货物
delFruitItem(list);break;case "4": //3.4.修改货物
updateFruitItem(list);break;case "5": //3.5.退出系统,退出JVM
System.out.println("退出系统");return;default:
System.out.println("对不起,没有您输入的功能,请重新选择");break;
}
}
上述代码中,参数list为库存商品集合。当键盘输入功能序号后,通过switch语句匹配后,调用对应的方法完成对应功能的实现。
3.1.库存货物查询
public static void showFruitList(ArrayListlist) {
System.out.println("=======================商品库存清单=======================");
System.out.println("商品编号\t商品名称\t\t商品单价");//查询每种库存商品信息
for (int i = 0; i < list.size(); i++) {
FruitItem item=list.get(i);
System.out.println(item.ID+ "\t" + item.name + "\t" +item.price);
}
}
上述代码中,用来查询所有库存商品信息。
3.2.添加新货物
public static void addFruitItem(ArrayListlist) {//创建新获取对象
FruitItem newItem= newFruitItem();
Scanner sc= new Scanner(System.in);//键盘输入对象//提示输入信息
System.out.print("请输入新水果的名称:");
newItem.name=sc.next();
System.out.print("请输入新水果的编号:");
newItem.ID=sc.nextInt();
System.out.print("请输入新水果单价:");
newItem.price=sc.nextDouble();//向货物集合中添加新的物品项
list.add(newItem);
}
上述代码中,通过键盘录入,将录入的商品信息存储到库存商品集合中。
3.3.删除货物
public static void delFruitItem(ArrayListlist) {
System.out.print("请输入您要删除的水果编号:");
Scanner sc= new Scanner(System.in);//键盘输入对象
int fruitID =sc.nextInt();//删除集合元素
for (int i = 0; i < list.size(); i++) {
FruitItem thisItem=list.get(i);if(thisItem.ID ==fruitID) {
list.remove(thisItem);
System.out.println("水果信息删除完毕!");return;
}
}
System.out.println("对不起,没有这个编号的水果!");
}
上述代码中,通过键盘录入,在库存集合中查找对应的商品编号,如果找到该商品,将该商品删除,否则,提示没有这个编号的商品。
3.4.修改货物
public static void updateFruitItem(ArrayListlist) {
System.out.println();
System.out.print("请输入您要修改信息的水果编号:");
Scanner sc= new Scanner(System.in);//键盘输入对象
int fruitID =sc.nextInt();//更新集合元素
for (int i = 0; i < list.size(); i++) {
FruitItem thisItem=list.get(i);if(thisItem.ID ==fruitID) {
System.out.print("请输入新的水果ID:");
thisItem.ID=sc.nextInt();
System.out.print("请输入新的水果名称:");
thisItem.name=sc.next();
System.out.print("请输入新的水果单价:");
thisItem.price=sc.nextDouble();
System.out.println("水果信息更新完毕!");return;
}
}
System.out.println("对不起,没有这个编号的水果!");
}
上述代码中,通过键盘录入,在库存集合中查找对应的商品编号,如果找到该商品,则键盘录入修改商品信息,否则,提示没有这个编号的商品。
超市库存java管理系统_Java案例:超市库存管理系统相关推荐
- java中交通灯管理系统_java案例--交通灯管理系统学习
一.需求分析 刚接到一个项目或者面试题(总之是一个相对比较复杂的问题时),应该对认真阅读问题的 要求和描述,并通过对这些的分析进行抽象,通过一个个对象的方式来考虑自己的程序该 怎么写.所以,首先来看看 ...
- java人事管理系统_Java课程设计——人事管理系统
1 packagePersonSystem;2 3 import java.awt.*;4 import java.awt.event.*;5 import javax.swing.*;6 impor ...
- java书店库存系统论文_JAVA论文网上书店管理系统优秀毕业论文
JAVA论文网上书店管理系统优秀毕业论文 沈阳航空工业学院毕业设计(论文)I网上书店系统院 系专 业班 级学 号姓 名指导教师负责教师沈阳航空工业学院毕业设计(论文)II摘 要20 世纪末,随着计算机 ...
- 把超市系统连接到java数据库_Java项目 超市管理系统(二)数据库的分析与建立...
项目是在网上找的,后面我会附上项目的链接. 需求:建立一个简易的超市管理系统数据库 分析:超市数据库中肯定有一个商品表,有一个管理员表,还有一个销售表.这样一个基本的超市数据库雏形就有了.下面开始构建 ...
- java 打折_Java 为超市打折水果编写一个购物程序
(1)抽象父类Fruit,包含以下属性和方法: a)一个int类型的成员变量unitPrice,存放单价,单位为元/千克; b)一个int类型的成员变量amount,存放重量,单位为千克. c)一个d ...
- java宠物商店管理系统_Java实现宠物商店管理系统
Java实现宠物商店管理系统,宠物,宠物商店,数组,您的,还需要 Java实现宠物商店管理系统 易采站长站,站长之家为您整理了Java实现宠物商店管理系统的相关内容. 本文实例为大家分享了Java实现 ...
- java 人事_java版简易人事管理系统
[实例简介] 通过对java的学习.用开发工具开发的一款简易人事管理系统 [实例截图] [核心代码] 386393HMSs └── HMSs ├── bin │ ├── com │ │ └ ...
- java中的JDBC用户管理系统_Java+JDBC学生信息管理系统
base包下: package base; import java.sql.ResultSet; import java.sql.SQLException; import dao.AdminDAO; ...
- java web信息管理系统_Java web学生信息管理系统
[实例简介] 基于Jsp&servlet;+JavaBean的学生信息管理系统,实现了学生成绩.课程.教师的管理 [实例截图] [核心代码] Javaweb学生信息管理系统 └── Java ...
- swing java管理系统_Java swing实现酒店管理系统
packagecom.sunshine.setup;import javax.swing.*;import javax.swing.border.*;import javax.swing.table. ...
最新文章
- SharePoint运行状况分析器有关磁盘空间不足的警告
- 复旦肖仰华:领域知识图谱落地实践中的问题与对策
- OpenCV图像颜色模型转换:cvtColor函数的使用
- dhtml是基于html的一门语言,什么是DHTML
- mysql5.7 solo web服务器
- Loadrunner--运行场景报Socket descriptor not found错误
- 小米2s回退出厂版本_雷军很高兴,小米出货量升至全球第四
- PRD:「FITLIFE」小程序产品需求文档(用户端)
- 将PHP作为Shell脚本语言使用
- 据说,很多搞科研的硕博生,都容易产生以下20个错觉,看看你中了几枪?
- 10 个学习iOS开发的最佳网站(转)
- JavaBean实现简单登录功能
- Word字体间距变大
- 错误: 找不到或无法加载主类 org.sang.BlogserverApplication
- C语言解决三色旗问题
- 使用sql语句在命令行下载mysql表格数据
- win11提示找不到gpedit.msc命令
- 写学习心得,赢华为P30、漫步者音响!
- 一个海底隧道中只有一个车道,规定同一个方向的可以连续过隧道。某方向有列车过隧道时,另一个方向的列车就要等待, 现在东岸和西岸都有列车要过隧道,如果把每个过隧道的列车看作一个进程,使用P、V操作
- 前端如何获取电池信息?
热门文章
- 输出200以内所有素数(python)
- Python:1004 成绩排名
- 计算机控制教师端,摆脱学校机房教师端控制的方法汇总
- docker安装gamit_Ubuntu 14.04下Gamit10.5安装
- 关于计算机学院 公众号的名字,好听的公众号名称大全
- 公众号封面图内容数据提取软件
- excel如何让日期/时间增加指定分钟、小时、日
- eth java_eth钱包开发--java(附带eth离线交易工具类)
- mac php71 php fpm,Mac PHP-fpm
- 停下来想一想:你为什么会离开游戏行业?