每天一段java代码--------(第12天)商品录入系统

这是一个使用Java编写的简单商品管理系统,包括显示商品列表、录入新商品、查询商品信息和统计商品总价、单价平均价、最高单价及最高总价等功能。用户通过菜单进行交互,实现了基本的商品管理操作。
package test;

import java.util.Scanner;
//通过java基础的相关知识,设计并完成一个简单的商品录入系统,可以实现
//菜单显示/商品信息展示/商品信息录入/商品信息查询(退出)
public class test9 {
    //成员变量
    static String[] names = {"iPhoneXS","华为 Mate 20 pro","小米X","vivo NEX","oppo Find"};
    static double[] price = {8999,5399,2399,4399,3999};
    static int[] numbers = {50,20,80,120,90};

    public static void main(String[] args) {
        /*
        *------------------------------
        *1. 商品列表
        *2. 商品录入
        *3. 商品查询
        *4. 统计信息
        *5. 退出
        *-------------------------------
        *选择: > 1
        *....
         */
        //死循环显示菜单
        outer:
        while(true){
            //显示菜单,并获得选择的值
            int c = menu();
            //判断c的值
            switch(c){
                case 1: f1();  break;
                case 2: f2();  break;
                case 3: f3();  break;
                case 4: f4();  break;
                case 5: break outer;
            }
        }

    }

    private static void f4() {
        /*
        names
        ["A","B","C"]
        price
        [2,  8,  3]
        numbers
        [200, 300, 180]
         0     1     2
         */
        double spzj = 0;//商品总价
        double djzj = 0;//单价总价
        double zgdj = 0;//最高单价
        double zgzj = 0;//最高总价
        for (int i = 0; i < names.length; i++) {
            spzj +=price[i]*numbers[i];
            djzj +=price[i];
            //数组中,找到更大的值
            if(price[i]>zgdj){
                zgdj = price[i];//更大值存到这个变量
            }
            if(price[i]*numbers[i]>zgzj){
                zgzj = price[i]*numbers[i];
            }
        }
        System.out.println("商品总价:"+spzj);
        System.out.println("单价均价:"+(djzj/names.length));
        System.out.println("最高单价:"+zgdj);
        System.out.println("最高总价:"+zgzj);
    }

    private static void f3() {
        /*
        names
        ["A","B","C"]
        price
        [2,  8,  3]
        numbers
        [200, 300, 180]
         0     1     2
         字符串,比较是否相等要用equals()方法
        a= "aaa";
        b= "bbb";
        a.equals(b)
         */
        System.out.println("输入查询的商品名: ");
        String n = new Scanner(System.in).nextLine();
        for (int i = 0; i < names.length; i++) {
            if(n.equals(names[i])){
                String name = names[i];
                double p = price[i];
                int b = numbers[i];
                System.out.println(
                        (i+1)+".名称: "+name+",价格: "+p+",数量: "+b);
                return;
            }
        }
        //循环结束,所有商品都比较完,没有找到
        System.out.println("找不到商品");
    }

    private static void f2() {
        /*
        names
        ["A","B","C"]
        price
        [2,  8,  3]
        numbers
        [200, 300, 180]
         0     1     2
         */
        //遍历数组
        for (int i = 0; i < names.length; i++) {
            System.out.println("录入第"+(i+1)+"件商品:");
            System.out.println("名称:");
            String n = new Scanner(System.in).nextLine();
            System.out.println("价格:");
            double p = new Scanner(System.in).nextDouble();
            System.out.println("数量:");
            int b = new Scanner(System.in).nextInt();
            names[i] = n;
            price[i] = p;
            numbers[i] = b;
        }
        f1();
    }

    private static void f1() {
        /*
        names
        ["A","B","C"]
        price
        [2,   8,   3]
        numbers
        [200,  300,   180]
          0     1      2
          1.名称:xx,价格:xx,数量:xx
         */
        for (int i = 0; i < names.length; i++) {
            String n = names[i];
            double p = price[i];
            int b = numbers[i];
            System.out.println(
                    (i+1)+".名称:"+n+",价格:"+p+",数量:"+b);
        }
    }

    private static int menu() {
        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("选择: >");
        return new Scanner(System.in).nextInt();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值