Java学完数组对象简易的商品管理系统

目录

1.基本结构:

 2.定义一个商品类

3.定义一个产品数组

4.定义当前数组的长度

5.得到一个初始化的产品数组

6.显示所有产品(按编号排序)

7.增加一个产品

8.删除一个产品

9.查找一个产品

10.按价格对商品进行排序

11.主菜单


1.基本结构:

                        

 2.定义一个商品类

public class Product {
    //1.定义产品  编号  名称  价格 类型
    int no;
    String name;
    int price;
    String type;

    //2.定义一个含全部参数的产品对象
    public Product(int no, String name, int price, String type) {
        this.no = no;
        this.name = name;
        this.price = price;
        this.type = type;
    }
}

3.定义一个产品数组

    static Product data[] = new Product[100];

4.定义当前数组的长度

    static int len = 100;

5.得到一个初始化的产品数组

public static void getArr() {

        Product s1 = new Product(1, "苹果", 12, "水果");
        Product s2 = new Product(2, "面包", 22, "食品");
        Product s3 = new Product(3, "鸡蛋", 13, "蛋类");
        Product s4 = new Product(4, "西瓜", 30, "水果");
        Product s5 = new Product(5, "变形金刚", 63, "玩具");
        Product s6 = new Product(6, "大白菜", 18, "蔬菜");

        data[0] = s1;
        data[1] = s2;
        data[2] = s3;
        data[3] = s4;
        data[4] = s5;
        data[5] = s6;

        len = 6;
    }

6.显示所有产品(按编号排序)

    public static void show() {
        System.out.println("**************显示产品**************");
        System.out.println("编号\t名称\t价格\t类型");
        Product temp;
        for (int i = 0; i < len - 1; i++) {
            boolean flag = false;
            for (int j = 0; j < len - i - 1; j++) {
                if (data[j].no> data[j + 1].no) {
                    temp = data[j];
                    data[j] = data[j + 1];
                    data[j + 1] = temp;
                    flag = true;
                }
            }
            if (!flag) {
                break;
            }
        }
        for (int i = 0; i < len; i++) {
            System.out.println(data[i].no + "\t\t" + data[i].name + "\t" + data[i].price + "\t\t" + data[i].type);
        }
    }

7.增加一个产品

  public static void add() {
        System.out.println("**************增加产品**************");
        int index = -1;
        Scanner sc = new Scanner(System.in);
        System.out.print("输入你想要增加的产品编号、名称、价格、类型:");
        int no = sc.nextInt();
        String name = sc.next();
        int price = sc.nextInt();
        String type = sc.next();

        for (int i = 0; i < len; i++) {
            if (data[i].no == no) {
                index = i;
            }
        }
        if (index == -1) {
            Product s = new Product(no, name, price, type);
            data[len] = s;
            len++;
        } else {
            System.out.println("对不起,你添加的产品编号已存在!");
        }


    }

8.删除一个产品

  public static void delete() {
        System.out.println("**************删除产品**************");
        int index = -1;
        Scanner sc = new Scanner(System.in);
        System.out.print("输入你想要删除的产品编号:");
        int no = sc.nextInt();
        for (int i = 0; i < len; i++) {
            if (data[i].no == no) {
                index = i;
            }
        }

        for (int i = index; i < len; i++) {
            data[i] = data[i + 1];
        }
        len--;
    }

9.查找一个产品

    public static void find() {
        System.out.println("**************查找产品**************");
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入查找的产品编号:");
        int num = sc.nextInt();
        int index = -1;
        for (int i = 0; i < len; i++) {
            if (data[i].no == num) {
                index = i;
            }
        }
        if (index != -1) {
            System.out.println("你要查找的产品为:");
            System.out.println("编号\t名称\t价格\t类型");
            System.out.println(data[index].no + "\t\t" + data[index].name +
                    "\t" + data[index].price + "\t\t" + data[index].type);
        } else {
            System.out.println("对不起,你所查询的编号不存在!");
        }
    }

10.按价格对商品进行排序

 public static void sortPrice(){
        System.out.println("**************按价格排序**************");
        System.out.println("编号\t名称\t价格\t类型");
        Product temp;
        for (int i = 0; i < len - 1; i++) {
            boolean flag = false;
            for (int j = 0; j < len - i - 1; j++) {
                if (data[j].price> data[j + 1].price) {
                    temp = data[j];
                    data[j] = data[j + 1];
                    data[j + 1] = temp;
                    flag = true;
                }
            }
            if (!flag) {
                break;
            }
        }
        for (int i = 0; i < len; i++) {
            System.out.println(data[i].no + "\t\t" + data[i].name + "\t" + data[i].price + "\t\t" + data[i].type);
        }
    }

11.主菜单

public static void menu() {
        String[] mune = new String[]{
                "1.显示产品",
                "2.查找产品",
                "3.增加产品",
                "4.删除产品",
                "5.按价格进行排序",
                "6.退出"
        };

        System.out.println("************主菜单*************");
        for (String s1 : mune) {
            System.out.println(s1);
        }
        while (true) {
            System.out.print("请输入你要进行的操作:");
            Scanner sc = new Scanner(System.in);
            int num = sc.nextInt();
            switch (num) {
                case 1:
                    show();
                    break;
                case 2:
                    find();
                    break;
                case 3:
                    add();
                    break;
                case 4:
                    delete();
                    break;
                case 5:
                    sortPrice();
                    break;
                case 6:
                    return;
                default:
                    System.out.println("输入错误,请重新输入!");
                    break;
            }
        }
    }

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值