java实现超市管理系统
作者:气死的笨喵 发布时间:2022-06-23 13:19:06
标签:java,超市,管理系统
本文实例为大家分享了java实现超市管理系统的具体代码,供大家参考,具体内容如下
实现功能
使用选择结构,循环结构,数组的知识实现一个超市管理系统
运行结果:货物清单:
添加商品功能:
删除商品功能:
修改商品:
商品货物实体类
import java.util.Arrays;
public class Goods {
private int id;
private double price;
private String name;
public Goods(int id, double price, String name) {
this.id = id;
this.price = price;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Goods() {
}
//增加商品
public Goods[] add(Goods[]goods,Goods newGood){
goods= Arrays.copyOf(goods,goods.length+1);
goods[goods.length-1]=newGood;
return goods;
}
//删除商品
public static Goods[] del(Goods[]goods,int id){
int i=0;
while(true){
if(goods[i].getId()==id){
goods[i]=null;
return goods;
}
i++;
if(i>=goods.length){
return goods;
}
}
}
//添加商品
public static Goods[] change(Goods[]goods,int id,int newId,double newPrice,String newName){
int i=0;
while (true){
if(goods[i].getId()==id){
goods[i].setId(newId);
goods[i].setPrice(newPrice);
goods[i].setName(newName);
return goods;
}
i++;
if(i>=goods.length){
return goods;
}
}
}
}
超市管理系统类
import java.util.Scanner;
public class marketManager {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Goods g1=new Goods(1000,10,"笔记本");
Goods g2=new Goods(1001,2,"西红柿");
Goods g3=new Goods(1002,5,"辣条");
Goods []goods={g1,g2,g3};
while (true) {
System.out.println("========超市管理系统=======");
System.out.println("1.货物清单 2.增加商品 3.删除商品 4.修改商品 5.退出");
System.out.println("请输入你要操作的编号:");
int i = sc.nextInt();
switch (i){
case 1:
System.out.println("=======商品清单=======");
System.out.println("商品编号"+"\t\t"+"商品单价"+"\t\t"+"商品名称");
for (Goods a:goods) {
if(a==null){
continue;
}
System.out.println(a.getId()+"\t\t"+a.getPrice()+"\t\t"+a.getName());
}
continue;
case 2:
System.out.println("你选择的是增加商品的功能");
System.out.println("请输入你要添加的编号:");
int Id = sc.nextInt();
System.out.println("请输入你要添加的商品价格:");
double price = sc.nextDouble();
System.out.println("请输入你要添加的商品名称");
String name = sc.next();
Goods good=new Goods(Id,price,name);
goods = good.add(goods, good);
System.out.println("添加成功!");
continue;
case 3:
System.err.println("你选择的是删除商品功能");
System.out.println("请输入你要操作的编号:");
Id = sc.nextInt();
goods=Goods.del(goods,Id);
System.out.println("删除成功!");
continue;
case 4:
System.out.println("你选择的是修改商品功能");
System.out.println("请输入你要操作的编号:");
Id=sc.nextInt();
System.out.println("请输入修改后的编号:");
int newId = sc.nextInt();
System.out.println("请输入修改后的价格:");
double newPrice = sc.nextDouble();
System.out.println("请输入修改后的商品名称:");
String newName=sc.next();
goods=Goods.change(goods,Id,newId,newPrice,newName);
continue;
case 5:
return;
}
}
}
}
来源:https://blog.csdn.net/qq_40459545/article/details/109366379
0
投稿
猜你喜欢
- 实践过程效果代码public partial class Form1 : Form{ public Form1()
- 第一步:整合pom文件,在Spring Cloud中添加XXL-Job的依赖<!-- xxl-job-core --><d
- 一、设计模式概述设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他
- Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。本篇不涉及其原理,只用代码构建项目简单试用一下其回滚
- 关于Android开发可以使用的工具有eclipse和Android studio等,这两个工具都各有各的好处和不足。studio是谷歌推出
- 一、前言Redis是一个NoSQL(非关系型数据库)数据库之一,key-value存储系统或者说是一个缓存键值对数据库,具有如下特性:基于内
- 实例如下:MemoryMXBean memorymbean = ManagementFactory.getMemoryMXBean(); &
- 最近在开发中遇到一个关于Java方法重写的一些问题,对于方法重写的用法以及可能导致的问题产生了一些思考,本文用于记录下这些想法。问题场景我们
- 目录一 首先我们的去知道什么是反射?二(刨根问底)知道是什么还需要知道什么“成分”组成反射?2.1 Class 对象的获取及使用2.2 拿到
- static :静态常量,静态方法,静态代码块静态变量: 静态变量属于类的,使用类名来访问,非静态变量是属于对象的,"必须&quo
- 初识LinkedHashMap大多数情况下,只要不涉及线程安全问题,Map基本都可以使用HashMap,不过HashMap有一个问题,就是迭
- 实例如下所示:/** * 创建多级目录文件 * * @param path 文件路径 * @throws IOException */pri
- 折半搜索,也称二分查找算法、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。A 搜素过程从数组的中间元素开始,如果中间元素正好是要查
- 引言青蛙见了蜈蚣,好奇地问:"蜈蚣大哥,我很好奇,你那么多条腿,走路的时候先迈哪一条啊?"蜈蚣听后说:"青蛙老
- 1 简介Solace是一个强大的实时性的事件驱动消息队列。本文将介绍如何在Spring中使用,虽然代码使用的是Spring Boot,但并没
- WPF 窗体设置亚克力效果框架使用大于等于.NET40。Visual Studio 2022。项目使用 MIT 开源许可
- Java 切割字符串的几种方式//以data 为案例参数。String data = "2019-01-
- 异常处理机制已经成为判断一门编程语言是否成熟的标准之一,其对代码的健壮性有很大影响。一直以来异常处理使用不是很得心应手,今天对异常进行了较为
- 目录前言基础组件工作流程初步使用详细流程获取 MapperProxy 对象缓存执行方法构造参数获取需要执行的 SQL 对象执行 SQL 语句
- 序章首先引入依赖 implementation 'com.squareup.retrofit2:retro