Java基础小项目shopping
生活随笔
收集整理的這篇文章主要介紹了
Java基础小项目shopping
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
java練習小項目
題目如下:
1. 商店中,進貨員進貨(列出能夠進貨的食品,進貨員選擇進貨的食品,確定進貨的數量),進貨結束后, 列出進貨的食品清單
2. 商店中,售貨員售貨,顧客來購買食品(列出能夠購買的食品,顧客選擇購買的食品,確定購買食品的數量),購買結束后,列出顧客的購物清單
3. 顧客吃食品(列出能夠吃的食品,顧客選擇吃的食品,確定吃食品的數量),吃完后,把剩余的食品列出
要求:處理異常,程序要正常執行,分包明確
設計:
Shop類:有食品數組Food[],進貨員Stocker,售貨員Saler
進貨員類(Stocker):進貨方法
食品類(Food):食品名稱、食品數量
以下食品至少有兩種
梨(Pear extends Food):
…
蘋果(Apple extends Food):
售貨員類(Saler):售貨方法
父親(顧客Father):Food[]屬性,吃的方法
兒子(Son extends Father):吃的方法
**模塊及項目包圖片:
**
Apple:
Foods:
package no1.goods;public class Foods {String name;int num;public Foods() {super();}public Foods(String name, int num) {super();this.name = name;this.num = num;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getNum() {return num;}public void setNum(int num) {this.num = num;}public void add(int amount){this.num+=amount;}public void min(int amount){this.num-=amount;}}Newshop:
package no1.customer.goods;import java.util.Scanner; import no1.customer.*;public class Newshop {no1.goods.Foods[] food= {new no1.goods.Foods("紅富士",0), new no1.goods.Foods("雪梨",0)};public void stock(){while (true){System.out.println("商店現存貨有" + "1.Apple" + food[0].getName() + ":" + food[0].getNum() + "," + "2.Pear"+ food[1].getName() + ":" + food[1].getNum() + "退出請輸入:3.Exit");Scanner scan = new Scanner(System.in);String name = scan.next();try{if ("1".equals(name) || "Apple".equalsIgnoreCase(name)) {System.out.println("請輸入要進貨的數量");String num = scan.next();int amount = Integer.parseInt(num);food[0].add(amount);} else if ("2".equals(name) || "Pear".equalsIgnoreCase(name)) {System.out.println("請輸入要進貨的數量");String num = scan.next();int amount = Integer.parseInt(num);food[1].add(amount);} else if ("3".equals(name) || "Exit".equalsIgnoreCase(name)) {break;}}catch (NumberFormatException e){System.out.println("輸入不匹配,請重新輸入");}}}public void sell(Father fa){/*Foods[] f=new Foods[2];fa.setFood(f);*/no1.goods.Foods[] f=fa.getFood();while (true) {System.out.println("您好,歡迎光臨小店");System.out.println("商店現存貨有" + "1.Apple" + food[0].getName() + ":" + food[0].getNum() + "," + "2.Pear"+food[1].getName() + ":" + food[1].getNum() + "退出請輸入:3.Exit");Scanner scan = new Scanner(System.in);String name = scan.next();try {if ("1".equals(name) || "Apple".equalsIgnoreCase(name)) {System.out.println("請輸入要買的數量");String num = scan.next();int amount = Integer.parseInt(num);if(amount>food[0].getNum()){System.out.println("超出我們的庫存,請重新輸入");continue;}food[0].min(amount);f[0].add(amount);} else if ("2".equals(name) || "Pear".equalsIgnoreCase(name)) {System.out.println("請輸入要買的數量");String num = scan.next();int amount = Integer.parseInt(num);if(amount>food[1].getNum()){System.out.println("超出我們的庫存,請重新輸入");continue;}food[1].min(amount);f[1].add(amount);} else if ("3".equals(name) || "Exit".equalsIgnoreCase(name)) {break;}} catch (NumberFormatException e) {System.out.println("輸入不匹配,請重新輸入");}}}}Pear:
package no1.customer.goods; import java.util.Scanner;import no1.customer.*; import no1.goods.Foods;public class Shop {private static int appleNum=0;private static int pearNum=0;no1.goods.Foods[] food= {new no1.goods.Foods("紅富士",0), new no1.goods.Foods("雪梨",0)};public void stock(){System.out.println("商店現存貨有"+"1"+food[0].getName()+":"+food[0].getNum()+","+"2"+food[1].getName()+":"+food[1].getNum()+" "+"退出請輸入:exit");while(true){Scanner scan=new Scanner(System.in);String s=scan.nextLine();switch(s){case "1":System.out.println("請輸入你要進貨的紅富士的數量");int num1=scan.nextInt();food[0].setNum(appleNum+=num1);System.out.println("商店現存貨有"+"1"+food[0].getName()+":"+food[0].getNum()+","+"2"+food[1].getName()+":"+food[1].getNum());break;case "2":System.out.println("請輸入你要進貨的雪梨的數量");int num2=scan.nextInt();food[1].setNum(pearNum+=num2);System.out.println("商店現存貨有"+"1"+food[0].getName()+":"+food[0].getNum()+","+"2"+food[1].getName()+":"+food[1].getNum());break;case "exit":return;}}}public void sell(Father fa){Foods[] e = fa.getFood();System.out.println("您好,歡迎光臨小店!");System.out.println("商店現存貨有"+"1"+food[0].getName()+":"+food[0].getNum()+","+"2"+food[1].getName()+":"+food[1].getNum()+" "+"退出請輸入:exit");int num1=0;int num2=0;while(true){Scanner scan=new Scanner(System.in);String s=scan.nextLine();switch(s){case"1":System.out.println("請輸入你要買的紅富士的數量");num1=scan.nextInt();if (num1>food[0].getNum()){System.out.println("超出我們的庫存");break;}food[0].setNum(appleNum-=num1);e[0].setNum(num1);System.out.println("商店現存貨有"+"1"+food[0].getName()+":"+food[0].getNum()+","+"2"+food[1].getName()+":"+food[1].getNum()+" "+"退出請輸入:exit");break;case"2":System.out.println("請輸入你要買的紅富士的數量");num2=scan.nextInt();if (num2>food[1].getNum()){System.out.println("超出我們的庫存");break;}food[0].setNum(pearNum-=num2);e[1].setNum(num2);System.out.println("商店現存貨有"+"1"+food[0].getName()+":"+food[0].getNum()+","+"2"+food[1].getName()+":"+food[1].getNum()+" "+"退出請輸入:exit");break;case "exit":System.out.println("您買的商品:");System.out.println("Apple:"+num1+",Pear:"+num2);return;}}}}Test:
package no1.customer.test;import no1.customer.*; import no1.customer.goods.Newshop;public class Test {public static void main(String[] args){Newshop s=new Newshop();Father fa=new Father();s.stock();s.sell(fa);fa.eat();Son son=new Son();son.setFood(fa.getFood());System.out.println("兒子準備吃東西");son.eat();son.surplus();}}Father:
package no1.customer;import no1.goods.Foods;import java.util.Scanner;public class Father {no1.goods.Foods[] food= {new no1.goods.Foods("紅富士",0), new no1.goods.Foods("雪梨",0)};public Foods[] getFood() {return food;}public void setFood(Foods[] food) {this.food = food;}public void eat(){int num1=food[0].getNum();int num2=food[1].getNum();while (true) {System.out.println("現在手上有1.Apple紅富士:" + food[0].getNum() + " 2.Pear雪梨:" + food[1].getNum());System.out.println("吃什么呢?1.apple 2.pear 不吃3.full");Scanner scan = new Scanner(System.in);String name = scan.next();try{if ("1".equals(name) || "apple".equalsIgnoreCase(name)){System.out.println("要吃多少蘋果呢");String num = scan.next();int amount = Integer.parseInt(num);if (amount > food[0].getNum()){System.out.println("沒有這么多蘋果");continue;}food[0].setNum(num1-=amount);}if("2".equals(name)||"pear".equals(name)){System.out.println("要吃多少梨子呢");String num=scan.next();int amount=Integer.parseInt(num);if (amount > food[1].getNum()){System.out.println("沒有這么多梨子");continue;}food[1].setNum(num2-=amount);}else if("3".equals(name)||"full".equals(name)){break;}}catch(NumberFormatException e){System.out.println("輸入不匹配,請重新輸入");}}}}Son:
package no1.customer;public class Son extends Father {public void surplus(){System.out.println("爸爸手上還剩余蘋果:"+food[0].getNum()+" 梨子:"+food[1].getNum());}}總結
以上是生活随笔為你收集整理的Java基础小项目shopping的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 绘画结构知识基础篇
- 下一篇: (10.1.3.2)浅谈扁平化设计—–