Java使用数组和循环结构实现简单的商品管理系统

简介: 今天使用数组和循环结构实现了一个简单的商品管理系统主要功能如下: 1.查询所有商品、2.添加、3.修改、4.删除、5.退出查询:编号名称价格1苹果3.12橘子3.5添加: 输入编号名称价格添加到数组中修改: 根据编号修改名称、价...

今天使用数组和循环结构实现了一个简单的商品管理系统
主要功能如下:
1.查询所有商品、2.添加、3.修改、4.删除、5.退出

  • 查询:
编号 名称 价格
1 苹果 3.1
2 橘子 3.5
  • 添加:

         输入编号名称价格添加到数组中
  • 修改:

         根据编号修改名称、价格
  • 删除:

         根据编号删除商品
  • 退出:

         结束程序, 谢谢使用
import java.util.Scanner;
public class ShoppingManageSystem {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int[] ids = {1,2,3};
        String[] names = {"香蕉","苹果","橘子"};
        double[] prices = {1.2,3.2,1.5};
        //欢迎界面
        System.out.println("*********************************");
        System.out.println("*****欢迎使用JJ商品管理系统*******");
        System.out.println("*********************************");
        System.out.println("=================================");
        //功能选择
        while (true) {
            System.out.println("**************************");
            System.out.println("**   1、查询商品         *******");
            System.out.println("**   2、添加商品         *******");
            System.out.println("**   3、修改商品         *******");
            System.out.println("**   4、删除商品         *******");
            System.out.println("**   5、退出                   *******");
            System.out.println("**************************");
            System.out.println("请选择功能:");
            String choose = input.next();

            if (choose.equals("1")) {        //查询商品功能
                System.out.println("编号\t名称\t价格");
                System.out.println("-------------------------");
                for (int i = 0; i < prices.length; i++) {
                    if (ids[i]>=0) {
                        System.out.print(ids[i] + "\t");
                        System.out.print(names[i] + "\t");
                        System.out.println(prices[i] + "\t");
                    }
                }
                System.out.println();
            }else if (choose.equals("2")) {            //添加商品功能
                    int addId;
                    String addName;
                    double addPrice;
                    while (true) {
                        //输入添加的商品信息
                        System.out.println("请输入要添加的商品编号");
                        addId = input.nextInt();
                        System.out.println("请输入要添加的商品名称");
                        addName = input.next();
                        System.out.println("请输入要添加的商品价格");
                        addPrice = input.nextDouble();
                        boolean flag = true;
                        //判断编号是否重复,重复从新输入,不重复继续添加
                        for (int i = 0; i < ids.length; i++) {
                            if (addId == ids[i]) {
                                System.out.println("编号重复请重试");
                                flag = false;
                            }
                        }
                        if(flag == false){
                            continue;
                        }
                        //新建数组
                        int[] newIds = new int[ids.length+1];
                        String[] newNames = new String[names.length+1];
                        double[] newPrices = new double[prices.length+1];
                        //将数据放入新的数组中
                        for (int i = 0; i < prices.length; i++) {
                            newIds[i] = ids[i];
                            newNames[i] = names[i];
                            newPrices[i] = prices[i];
                        }
                        newIds[newIds.length-1] = addId;
                        newNames[newNames.length-1] = addName;
                        newPrices[newPrices.length-1] = addPrice;
                        //数组赋值
                        ids = newIds;
                        names = newNames;
                        prices = newPrices;
                        System.out.println("Success!");
                        break;
                    }
            }else if (choose.equals("3")) {            //修改商品功能
                int updateId;
                String updateName;
                double updatePrice;
                while (true) {
                    //输入添加的商品信息
                    System.out.println("请输入要修改的商品编号");
                    updateId = input.nextInt();
                    System.out.println("请输入要修改的商品名称");
                    updateName = input.next();
                    System.out.println("请输入要修改的商品价格");
                    updatePrice = input.nextDouble();
                    boolean flag = true;
                    //判断编号是否存在,不存在从新输入,存在修改
                    for (int i = 0; i < ids.length; i++) {
                        if (updateId == ids[i]) {
                            names[i] = updateName;
                            prices[i] = updatePrice;
                            flag = false;
                            System.out.println("修改成功!");
                        }else{
                            
                        }
                    }
                    if(flag == false){
                        break;
                    }
                    System.out.println("编号不存在,请重新输入!");
                }
            }else if (choose.equals("4")) {            //删除商品功能
                while(true){
                    System.out.println("请输入要删除的商品编号:");
                    int delId = input.nextInt();
                    boolean flag = true;
                    for (int i = 0; i < ids.length; i++) {
                        if (delId == ids[i]) {
                            ids[i] = -1;
                            System.out.println("删除成功!");
                            flag = false;
                        }else{
                        
                        }
                    }
                    if (flag == false) {
                        break;
                    }
                    System.out.println("没有该商品,请从新选择!");
                }
            }else if (choose.equals("5")) {            //退出
                break;
            }else{
                System.out.println("您输入的功能不存在,请重新输入:");
            }
        }
        System.out.println("程序结束,谢谢使用。");
    }
}
相关文章
|
19天前
|
运维 自然语言处理 供应链
Java云HIS医院管理系统源码 病案管理、医保业务、门诊、住院、电子病历编辑器
通过门诊的申请,或者直接住院登记,通过”护士工作站“分配患者,完成后,进入医生患者列表,医生对应开具”长期医嘱“和”临时医嘱“,并在电子病历中,记录病情。病人出院时,停止长期医嘱,开具出院医嘱。进入出院审核,审核医嘱与住院通过后,病人结清缴费,完成出院。
55 3
|
22天前
|
Java 数据库连接 数据库
深入探讨Java连接池技术如何通过复用数据库连接、减少连接建立和断开的开销,从而显著提升系统性能
在Java应用开发中,数据库操作常成为性能瓶颈。本文通过问题解答形式,深入探讨Java连接池技术如何通过复用数据库连接、减少连接建立和断开的开销,从而显著提升系统性能。文章介绍了连接池的优势、选择和使用方法,以及优化配置的技巧。
22 1
|
24天前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
29天前
|
存储 缓存 算法
Java 数组
【10月更文挑战第19天】Java 数组是一种非常实用的数据结构,它为我们提供了一种简单而有效的方式来存储和管理数据。通过合理地使用数组,我们能够提高程序的运行效率和代码的可读性。更加深入地了解和掌握 Java 数组的特性和应用,为我们的编程之旅增添更多的精彩。
31 4
|
27天前
|
移动开发 前端开发 JavaScript
java家政系统成品源码的关键特点和技术应用
家政系统成品源码是已开发完成的家政服务管理软件,支持用户注册、登录、管理个人资料,家政人员信息管理,服务项目分类,订单与预约管理,支付集成,评价与反馈,地图定位等功能。适用于各种规模的家政服务公司,采用uniapp、SpringBoot、MySQL等技术栈,确保高效管理和优质用户体验。
|
29天前
|
存储 缓存 算法
提高 Java 数组性能的方法
【10月更文挑战第19天】深入探讨了提高 Java 数组性能的多种方法。通过合理运用这些策略,我们可以在处理数组时获得更好的性能表现,提升程序的运行效率。
26 2
|
29天前
|
XML JSON 监控
告别简陋:Java日志系统的最佳实践
【10月更文挑战第19天】 在Java开发中,`System.out.println()` 是最基本的输出方法,但它在实际项目中往往被认为是不专业和不足够的。本文将探讨为什么在现代Java应用中应该避免使用 `System.out.println()`,并介绍几种更先进的日志解决方案。
48 1
|
1月前
|
Java 关系型数据库 API
介绍一款Java开发的企业接口管理系统和开放平台
YesApi接口管理平台Java版,基于Spring Boot、Vue.js等技术,提供API接口的快速研发、管理、开放及收费等功能,支持多数据库、Docker部署,适用于企业级PaaS和SaaS平台的二次开发与搭建。
|
1月前
|
存储 Java
Java“(array) <X> Not Initialized” (数组未初始化)错误解决
在Java中,遇到“(array) &lt;X&gt; Not Initialized”(数组未初始化)错误时,表示数组变量已被声明但尚未初始化。解决方法是在使用数组之前,通过指定数组的大小和类型来初始化数组,例如:`int[] arr = new int[5];` 或 `String[] strArr = new String[10];`。
|
1月前
|
Java 关系型数据库 MySQL
基于Java的学生成绩管理系统/学生信息管理系统
基于Java的学生成绩管理系统/学生信息管理系统
47 2
下一篇
无影云桌面