倉庫管理

初始化

{
    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單價(jià)\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í)變量,實(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() {
        /*
            定義鍵盤掃描器
            提示用戶輸入商品名稱
            接受用戶輸入 商品名稱
            提示輸入價(jià)格 庫存
            按收以上數(shù)據(jù)

            new Article()
            newArticle.setArticle(接受名稱,價(jià)格腻暮,庫存彤守,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("請輸入商品的單價(jià):");
        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)系作者
禁止轉(zhuǎn)載具垫,如需轉(zhuǎn)載請通過簡信或評論聯(lián)系作者。
  • 序言:七十年代末试幽,一起剝皮案震驚了整個濱河市筝蚕,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌铺坞,老刑警劉巖起宽,帶你破解...
    沈念sama閱讀 216,843評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異济榨,居然都是意外死亡坯沪,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評論 3 392
  • 文/潘曉璐 我一進(jìn)店門擒滑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來腐晾,“玉大人,你說我怎么就攤上這事丐一≡逄牵” “怎么了?”我有些...
    開封第一講書人閱讀 163,187評論 0 353
  • 文/不壞的土叔 我叫張陵钝诚,是天一觀的道長颖御。 經(jīng)常有香客問我榄棵,道長凝颇,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,264評論 1 292
  • 正文 為了忘掉前任疹鳄,我火速辦了婚禮拧略,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘瘪弓。我一直安慰自己垫蛆,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,289評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著袱饭,像睡著了一般川无。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上虑乖,一...
    開封第一講書人閱讀 51,231評論 1 299
  • 那天懦趋,我揣著相機(jī)與錄音,去河邊找鬼疹味。 笑死仅叫,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的糙捺。 我是一名探鬼主播诫咱,決...
    沈念sama閱讀 40,116評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼洪灯!你這毒婦竟也來了坎缭?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,945評論 0 275
  • 序言:老撾萬榮一對情侶失蹤签钩,失蹤者是張志新(化名)和其女友劉穎幻锁,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體边臼,經(jīng)...
    沈念sama閱讀 45,367評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡哄尔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,581評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了柠并。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片岭接。...
    茶點(diǎn)故事閱讀 39,754評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖臼予,靈堂內(nèi)的尸體忽然破棺而出鸣戴,到底是詐尸還是另有隱情,我是刑警寧澤粘拾,帶...
    沈念sama閱讀 35,458評論 5 344
  • 正文 年R本政府宣布窄锅,位于F島的核電站,受9級特大地震影響缰雇,放射性物質(zhì)發(fā)生泄漏入偷。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,068評論 3 327
  • 文/蒙蒙 一械哟、第九天 我趴在偏房一處隱蔽的房頂上張望疏之。 院中可真熱鬧,春花似錦暇咆、人聲如沸锋爪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,692評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽其骄。三九已至亏镰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間拯爽,已是汗流浹背拆挥。 一陣腳步聲響...
    開封第一講書人閱讀 32,842評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留某抓,地道東北人纸兔。 一個月前我還...
    沈念sama閱讀 47,797評論 2 369
  • 正文 我出身青樓,卻偏偏與公主長得像否副,于是被迫代替她去往敵國和親汉矿。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,654評論 2 354

推薦閱讀更多精彩內(nèi)容