Java编写的超市商品库存的案例

商品库存的案例

案例分析:实现商品的库存管理
功能:
1.展示用户选择功能清单
2.根据选择的功能编号,进行不同的操作
A.展示所有库存
B.修改商品尺寸
C.修改商品价格
D.修改库存数量
E.添加用户


案例实现的代码:

import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;

public class Shop {

        //创建一个列表用于存储用户名
        public static List<String> aList =null; 
        //创建一个列表用于存储用户名密码
        public static List<String> aList1 =null;
        public static void main(String[] args){
            //创建一个用户列表用于存储用户信息
            aList = new ArrayList<String>();
            //创建一个用户列表用于存储用户信息
            aList1 = new ArrayList<String>();
            aList.add("蒋毅");
            aList1.add("123456");
            //使用数组,保存商品的信息
            //品名、尺寸、价格、库存数,定义4个数组
            String[] brand = {"MacBookAir","ThinkpadT450"};
            double[] size = {13.3,15.6};
            double[] price = {9998.97,6789.56};
            int[] count = {0,0};
            while(true){
                if(userNameAndpassWord()){
                itcase: while(true){
                        int choose = chooseFunction();
                        switch(choose){
                            case 1 :
                                //调用查看库存清单方法
                                printStore(brand,size,price,count);
                                break;
                            case 2 :
                                //调用修改商品的尺寸的方法
                                update(brand,size);
                                break;
                            case 3 :
                                //调用修改商品的价格的方法
                                update(brand,price);
                                break;
                            case 4 :
                                //调用修改库存的数量的方法
                                update(brand,count);
                                break;
                            case 5 :
                                //调用添加用户的方法
                                System.out.println("请输入新添用户的用名");
                                addUser(aList);
                                System.out.println("请输入新添用户的密码");
                                addUser(aList1);
                                break;
                            case 6 :
                                break itcase ;
                            default :
                                System.out.println("请输入正确的功能操作");
                                break;
                        }
                    }
                }
            }
        }
        /*
            定义方法:用于注册用户
            返回值:无
            参数类型:用户列表
        */
        public static void addUser(List<String> aList){
            String user = SystemIn();
            aList.add(user);
        }
        /*
            定义方法:用于输入用户名或密码
            返回值:String类型
            参数:没有
        */
        public static String SystemIn(){
            String SystemIn =new Scanner(System.in).next();
            return SystemIn;
        }
        /*
            定义方法:判断管理员输入的密码是否正确
            返回值:Boolean类型
            参数:无
        */
        public static boolean userNameAndpassWord(){
            boolean flag = false;
            System.out.println("请输入管理员用户名:");
            String username = SystemIn();
            System.out.println("请输入用户密码:");
            String password = SystemIn();
            //随机产生验证码
            Random ran = new Random();
            int yanZhenMa = ran.nextInt(10000);
            System.out.println("请输入验证码:"+yanZhenMa);
            Scanner sc = new Scanner(System.in);
            int YZM = sc.nextInt();
            if(PanduanName(username)&&PanduanPassWord(password)&&(yanZhenMa == YZM)){
                flag = true;
            }else{
                System.out.println("用户名错误或密码错误,请联系管理员");
            }       
            return flag;
        }
        /*
            定义方法:判断列表中是否存在输入的用户名
            返回值:boolean类型
            参数:String类型的用户名
        */
        public static boolean PanduanName(String username){
            boolean flag = false;
            for(int i = 0 ; i < aList.size();i++){
                String obj = aList.get(i);
                if(username.equals(obj)){
                    flag = true;
                }
            }
            return flag;
        }
            /*
            定义方法:判断列表中是否存在输入的密码
            返回值:boolean类型
            参数:String类型的用户名
        */
        public static boolean PanduanPassWord(String password){
            boolean flag = false;
            for(int i = 0 ; i < aList1.size();i++){
                Object obj = aList1.get(i);
                if(password.equals(obj)){
                    flag = true;
                }
            }
            return flag;
        }

        /*
            定义方法:重载修改库存的方法,修改尺寸或修改价格
            返回值:void
            参数:品名的数组,价格的数组
        */
        public static void update(String[] brand,double[] size){
            //遍历数组,遍历到一个,修改一个
            //接受键盘输入
            Scanner sc = new Scanner(System.in);
            //遍历数组
            for(int i = 0;i < brand.length; i++){
                System.out.println("请输入"+brand[i]+"新的尺寸:");
                //键盘输入,录入库存,存储到库存的数组中
                double newSize = sc.nextDouble();
                size[i] =newSize;
            }

        }

        /*
            定义方法,重载修改库存的方法,修改库存数量
            用户输入1个,就修改1个
            返回值:void
            参数:库存数的数组,品名的数组
        */
        public static void update(String[] brand,int[] count){
            //遍历数组,遍历到一个,修改一个
            //接受键盘输入
            Scanner sc = new Scanner(System.in);
            //遍历数组
            for(int i = 0;i < brand.length; i++){
                System.out.println("请输入"+brand[i]+"新的库存数");
                //键盘输入,录入库存,存储到库存的数组中
                int newCount = sc.nextInt();
                count[i] =newCount;
            }

        }

        /*
            定义方法:展示所有的库存清单,遍历
            返回值:没有
            参数:所有数组
        */
        public static void printStore(String[] brand,double[] size,double[] price,int[] count){
            System.out.println("-------------------商场库存清单-------------");
            System.out.println("品牌型号"+"\t"+"尺寸"+"\t"+"价格"+"\t"+"\t"+"库存数量");
            //定义变量,计算总库存数和总价格
            int totalCount = 0;
            int totalMoney = 0;
            //遍历数组,将数组中所有的商品信息打印出来
            for(int i  = 0;i < brand.length; i++){
                System.out.println(brand[i]+"\t"+size[i]+"\t"+price[i]+"\t"+"\t"+count[i]);
                totalCount += count[i];
                totalMoney += count[i]*price[i];
            }
            System.out.println("总库存数:\t"+totalCount);
            System.out.println("商品库存总金额:"+totalMoney);
        }
        /*
            定义方法,实现用户的选择功能,功能的需要返回来
            返回值:int
            参数,没有
        */
        public static int chooseFunction(){
            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("6.退出登入");
            System.out.println("请输入要执行的操作序号");
            //接收键盘输入
            Scanner sc = new Scanner(System.in);
            int chooseNumber = sc.nextInt();
            return chooseNumber;
        }
}

  • 第六天的学习思维导图:
    这里写图片描述

猜你喜欢

转载自blog.csdn.net/jiangyi_1612101_03/article/details/81321861