超市库存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. ...
最新文章
- C#远程访问linux(ubuntu)或windows的mysql数据库
- 【数据库系统概论】考研第六部分重点分析【6.1】
- Failed to import pydot
- linux .run文件_Linux快捷键及目录结构
- shell脚本 猜数字游戏并计数比较次数
- 普惠AI,将是开发者下一个风口吗?看看他们怎么说
- 初中生学计算机应用有什么好方面,计算机有哪些专业 初中毕业学习相关专业有发展吗...
- linux 同步数据scp与rsync
- 秒针国家统计局项目:我的一些感想和8点安全措施
- Cloudera Manager 环境搭建
- Linux Ubuntu 初学命令
- 【困难】数字迷宫,找到迷宫中的单词。
- 如何减少城市拥堵?——虹科利用激光雷达技术实现智能交通
- 锂电池电量百分比计算_锂电池充放电理论及电量计算方法详解
- 瘟神的尾行 -- Rootkit技术发展史 (转载)
- 抽象、封装、继承、多态--基本理解
- vue日历,阳历, 阴历,周,年,月,下拉选择,引用element组件,
- 网易集团补贴百万,游戏开发者扶持计划!仅限30名!!
- 汽车资讯APP软件开发与后期维护
- 《程序猿和攻城狮》 --南京大学软件学院导学课 测试一答案
热门文章
- 点击reset按钮失效,不能清空输入框。
- Java工程师进阶,Java全栈知识体系
- Linux日文教程,【图片】#教程#修正配置 Noto Sans CJK 避免中文显示为异体(日文)字形【linux吧】_百度贴吧...
- 彻底关闭 wps 热点广告
- Codeforces蓝名紫名黄名纪念贴
- vue 倒计时 插件_vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
- java 数据内地地址_我国大陆居民×××Java验证
- mac nginx php-fpm,Mac OS nginx 502 解决记录(php-fpm 启动失败)
- 美团前端面试题(附答案)
- 【数据仓库与OLAP技术】期末复习+考题