倉庫管理

初始化

{
    ArticleSet articleSet=new ArticleSet();

        //倉庫初始化,放入一些商品
     public void initial(){
        Article xiaomi11=new Article();
       /* xiaomi11.name="小米11";
        xiaomi11.number=30;
        xiaomi11.amount=0;
        xiaomi11.price=1999;*/

        xiaomi11.setArticle("小米11",1999,30,0);

        Article xiaomi11pro=new Article();
        xiaomi11pro.setArticle("小米11pro",2999,10,0);

        Article xiaomiUltra=new Article();
        xiaomiUltra.setArticle("小米至尊版",3999,20,0);

        articleSet.articles[0]=xiaomi11;
        articleSet.articles[1]=xiaomi11pro;
        articleSet.articles[2]=xiaomiUltra;
     }

啟動菜單

     public void startMenu(){

         boolean flag=true;
         do {
             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("********************");

             System.out.println("請輸入功能編號");
             Scanner scanner=new Scanner(System.in);
             int funNo=scanner.nextInt();
             switch (funNo){
                 case 1:
                     System.out.println("查看商品信息");
                     chakan();
                     break;
                 case 2:
                     System.out.println("新增商品信息");
                     add();
                     break;
                 case 3:
                     System.out.println("刪除商品信息");
                     delete();
                     break;
                 case 4:
                     System.out.println("賣出商品");
                     seleOut();
                     break;
                 case 5:
                     System.out.println("排行榜");
                     leadeBand();
                     break;
                 case 6:
                     System.out.println("謝謝,已經(jīng)退出");
                     exit();
                     flag=false;
                     break;
                 default:
                     System.out.println("您輸入的功能編號有錯誤");
                     break;
             }
         }while (flag);
     }

查看商品信息

     private void chakan() {
         System.out.println("編號\t名字\t\t單價\t\t庫存\t已售");
         for (int i=0;i<articleSet.articles.length;i++){
             if (articleSet.articles[i] !=null){
                 articleSet.articles[i].print(i);
             }
         }
     }

排行榜

     private void leadeBand() {
        /*降序排序
            for() 所有元素全部參與排序
                for() 當(dāng)前元素只和后邊的元素比較
                    if(當(dāng)前元素<后續(xù)元素)
                        交換位置
         */

                    //排序(冒泡排序)
         for (int i=0;i<articleSet.articles.length-1;i++){
             for (int j=0;j<articleSet.articles.length-i-1;j++){
                 if (articleSet.articles[j] !=null&&articleSet.articles[j+1] !=null){//數(shù)組中不為null才能參與排序
                     if (articleSet.articles[j].number<articleSet.articles[j+1].number){
                         Article newTemp=articleSet.articles[j];//新定義一個臨時變量,實(shí)現(xiàn)兩個數(shù)量交換位置
                         articleSet.articles[j]=articleSet.articles[j+1];
                         articleSet.articles[j+1]=newTemp;
                     }
                 }
             }
         }
         //打印結(jié)果
         for (int i=0;i<articleSet.articles.length;i++){
             if (articleSet.articles[i]!=null){
                System.out.println((i+1)+"\t"+articleSet.articles[i].name+"\t"+articleSet.articles[i].number);
            }
        }
    }

賣出商品

    private void seleOut() {
        /*
            接受用戶的輸入,找到要賣出的商品在數(shù)組中的位置,修改對應(yīng)的庫存
            sout(請輸入要銷售的商品名稱)
            sc=new Scanner
            name=sc.next();
            for()
                if(元素不為null&&.name equals(name) )//在數(shù)組的有值元素中 找到售出商品名字相同的位置
                sout (輸入賣出的數(shù)量:)
                sc.nextInt()
                if(賣出的數(shù)量<庫存[i].anmout)
                    庫存【i】.amount=【i】.amount-賣出的數(shù)量
                    售出【i】.number=【i】.number+賣出的數(shù)量
                    sout(賣出成功)
                    break;跳出循環(huán),后續(xù)的位置無需處理
         */

        System.out.println("請輸入你要售出的商品名稱:");
        Scanner scanner=new Scanner(System.in);
        String name=scanner.next();
        for (int i=0;i<articleSet.articles.length;i++){
            if ((articleSet.articles[i].name).equals(name)){
                System.out.println("請輸入你要售出的數(shù)量:");
                int shoumai=scanner.nextInt();
                if (shoumai<articleSet.articles[i].amount){
                    articleSet.articles[i].amount=articleSet.articles.length;
                    articleSet.articles[i].number=articleSet.articles.length;
                }
                System.out.println("售賣成功");
                break;
            }
        }
    }

刪除商品信息

    private void delete() {
        /*
            sout("請輸入你要刪除的商品編號")
            new Scanner()
            編號=sc.nextInt()
            // 在數(shù)組中找到對應(yīng)的商品,刪除
            for()
                if(在數(shù)組中不為null的元素中查找&& 編號==i+1)
                //刪除i位置的元素(具體操作:把后面的元素向前移動,覆蓋掉要刪除的元素)
                while (要刪除的元素的后一個元素 !=null)
                    前面的元素=后面的元素
                    j++
                //手動處理最后一個元素
                [j]=null;

                break;      //后續(xù)null元素直接跳過

        */
        System.out.println("請輸入要刪除的商品編號:");
        Scanner scanner=new Scanner(System.in);
        int bianhao=scanner.nextInt();
        boolean flag=true;
        for (int i=0;i<articleSet.articles.length;i++){
            if (articleSet.articles[i] !=null && (i+1)==bianhao){
                int j=i;
                while (articleSet.articles[j+1] !=null){
                    //后面的元素向前移動
                    articleSet.articles[j]=articleSet.articles[j+1];
                    j++;
                }
                articleSet.articles[j] =null;
                flag=true;
                break;  // 后續(xù)的空數(shù)組元素沒有必要執(zhí)行
            }else {
                flag=false;
            }
        }
        if (flag){
            System.out.println("刪除成功");
        }else {
            System.out.println("刪除失敗");
        }
    }

新增商品信息

    private void add() {
        /*
            定義鍵盤掃描器
            提示用戶輸入商品名稱
            接受用戶輸入 商品名稱
            提示輸入價格 庫存
            按收以上數(shù)據(jù)

            new Article()
            newArticle.setArticle(接受名稱,價格,庫存,0)

            添加到數(shù)組中
                for()
                    if (article[i]==null)第一個為空的數(shù)組元素
                        ariticle[i]=newArticle 存在第一個為空的數(shù)組位置
                   break 跳出后續(xù)的空格位置
        */
        Scanner scanner=new Scanner(System.in);
        System.out.println("請輸入商品的名稱:");
        String name=scanner.next();
        System.out.println("請輸入商品的單價:");
        double price=scanner.nextDouble();
        System.out.println("請輸入商品的庫存:");
        int count=scanner.nextInt();
        System.out.println("請輸入已買的數(shù)量:");
        int number=scanner.nextInt();

        Article newArticle=new Article();
        newArticle.setArticle(name,price,count,number);

        for(int i=0;i<articleSet.articles.length;i++){
           if (articleSet.articles[i]==null){
               articleSet.articles[i]=newArticle;//把新建的對象放在數(shù)組中的第一個空位置
               break;//后續(xù)的空位置直接跳過
           }
        }
    }

退出

    public void exit(){
        System.out.println("謝謝使用,系統(tǒng)即將退出!");
    }

}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請通過簡信或評論聯(lián)系作者。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容