开发者社区> 我是jjking> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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

简介: 今天使用数组和循环结构实现了一个简单的商品管理系统主要功能如下: 1.查询所有商品、2.添加、3.修改、4.删除、5.退出 查询: 编号 名称 价格 1 苹果 3.1 2 橘子 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("程序结束,谢谢使用。");
    }
}

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
员工管理系统 2.0 橙色版(java实现版,附源码)
员工管理系统 2.0 橙色版(java实现版,附源码)
72 0
Java并发编程之深入理解线程池原理及实现
Java线程池在实际的应用开发中十分广泛。虽然Java1.5之后在JUC包中提供了内置线程池可以拿来就用,但是这之前仍有许多老的应用和系统是需要程序员自己开发的。因此,基于线程池的需求背景、技术要求了解线程池原理和实现,一方面可以更为深刻理解Java多线程开发,有助于解决业务系统中因为线程问题所产生的bug;另一方面也有利于对遗留代码的重构。
1250 0
SpringBoot实现Java高并发秒杀系统之Web层开发(三)
SpringBoot实现Java高并发秒杀系统之Web层开发(三) 接着上一篇文章:SpringBoot实现Java高并发之Service层开发,今天我们开始讲SpringBoot实现Java高并发秒杀系统之Web层开发。
5869 0
SpringBoot实现Java高并发秒杀系统之Service层开发(二)
继上一篇文章:SpringBoot实现Java高并发秒杀系统之DAO层开发 我们创建了SpringBoot项目并熟悉了秒杀系统的表设计,下面我们将讲解一下秒杀系统的核心部分:Service业务层的开发。
2603 0
源码阅读之Java栈的实现
栈是 Last-In-First-Out (后进先出)的线性表。对栈的操作主要有两个:入栈(push)和出栈(pop)。因此它也是一种操作受限的线性表。尽管如此,它在计算机中应用非常广泛,是一种非常基础的数据结构。
1098 0
SpringBoot实现Java高并发秒杀系统之DAO层开发(一)
SpringBoot实现Java高并发秒杀系统之DAO层开发(一) 秒杀系统在如今电商项目中是很常见的,最近在学习电商项目时讲到了秒杀系统的实现,于是打算使用SpringBoot框架学习一下秒杀系统(本项目基于慕课网的一套免费视频教程:Java高并发秒杀API,视频教程中讲解的很详细,非常感谢这位讲师)。
6700 0
Java中Bitmap的实现
说bitmap之前,我们要明白数字在内存中的表示,如果说byte用8个二进制位表示,即可以表示个数,每个byte占8位,即每个byte占8行,在内存中这样形象的表示: 而bitmap结构,充分利用了每一行所有的位数,它将每个位置作为一个数,那么一行就可以模拟表示出8个数。
2786 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
阿里特邀专家关键:Java无锁集合代码分析
立即下载
JAVA反射原理以及一些常见的应用
立即下载
Java基础入门(四)-泛型、反射、注解
立即下载