亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java實(shí)現(xiàn)飲料自助售貨機(jī)

 更新時(shí)間:2022年02月08日 17:25:12   作者:愛(ài)吃意面的小泉同學(xué)  
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)飲料自助售貨機(jī),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了java實(shí)現(xiàn)飲料自助售貨機(jī)的具體代碼,供大家參考,具體內(nèi)容如下

①用戶類(lèi)

import java.util.Scanner;

//用戶類(lèi)
public class User?
{
? ? public static void main(String[] args)//主函數(shù)
? ? {
? ? ? ? Scanner sc = new Scanner(System.in);
? ? ? ? shopping shopping = new shopping();//創(chuàng)建對(duì)象
? ? ? ??
? ? ? ? System.out.println("歡迎使用XX大學(xué)飲料自動(dòng)販賣(mài)機(jī)");//系統(tǒng)提示語(yǔ)
? ? ? ? System.out.println("是否進(jìn)行購(gòu)物:1、是\t2、否");//系統(tǒng)提示語(yǔ)
? ? ? ??
? ? ? ? int select = sc.nextInt();//保存客戶輸入的數(shù)字
? ? ? ? if (select == 1)//如果客戶輸入的是“1”也就是需要進(jìn)行購(gòu)物
? ? ? ? {
? ? ? ? ? ? shopping.show();//打印商品列表
? ? ? ? ? ? System.out.println("請(qǐng)選擇相應(yīng)編號(hào)!");//提示用于選擇商品
? ? ? ? ? ? int choose = sc.nextInt();//保存客戶輸入的商品編號(hào)
? ? ? ? ? ??
? ? ? ? ? ? //邊界限定
? ? ? ? ? ? while (choose > 5 || choose <= 0)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? System.out.println("沒(méi)有此商品,請(qǐng)重新選擇!");//提示用戶輸入的編碼沒(méi)有對(duì)應(yīng)的商品
? ? ? ? ? ? ? ? choose = sc.nextInt();//再次保存客戶輸入的編號(hào)
? ? ? ? ? ? }
? ? ? ? ? ??
? ? ? ? ? ? if(choose == 5)//如果是“5”退出購(gòu)物
? ? ? ? ? ? {
? ? ? ? ? ? ? ? System.out.println("歡迎您下次光臨!");
? ? ? ? ? ? ? ? return ;
? ? ? ? ? ? }
? ? ? ? ? ??
? ? ? ? ? ? System.out.println("請(qǐng)輸入購(gòu)買(mǎi)數(shù)量!");//提示用戶輸入需要購(gòu)買(mǎi)的數(shù)量
? ? ? ? ? ? int num = sc.nextInt();//保存用戶需要購(gòu)買(mǎi)的數(shù)量
? ? ? ? ? ??
? ? ? ? ? ? while (true)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? shopping.shop(choose,num);//調(diào)用購(gòu)買(mǎi)函數(shù)
? ? ? ? ? ? ? ? System.out.println();
? ? ? ? ? ? ? ? shopping.show();//顯示購(gòu)買(mǎi)后的商品列表
? ? ? ? ? ? ? ? System.out.println("如繼續(xù)購(gòu)物,請(qǐng)?jiān)俅芜x擇相應(yīng)編號(hào)!");
? ? ? ? ? ? ? ? choose = sc.nextInt();//保存用戶輸入的商品編號(hào)
? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? //邊界限定
? ? ? ? ? ? ? ? while (choose > 5 || choose <= 0)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? System.out.println("沒(méi)有此商品,請(qǐng)重新選擇!");
? ? ? ? ? ? ? ? ? ? choose = sc.nextInt();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? if(choose == 5)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? System.out.println("歡迎您下次光臨!");
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? System.out.println("請(qǐng)輸入購(gòu)買(mǎi)數(shù)量");//提示語(yǔ)
? ? ? ? ? ? ? ? num = sc.nextInt();//保存客戶購(gòu)買(mǎi)數(shù)量
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? else//選擇“2”不進(jìn)行購(gòu)物
? ? ? ? {
? ? ? ? ? ? System.out.println("歡迎下次光臨!");
? ? ? ? }
? ? }
}

②購(gòu)買(mǎi)類(lèi)

//購(gòu)買(mǎi)類(lèi)
?class shopping?
?{
?? ?//創(chuàng)建商品
? ? goods beer = new goods("啤酒",3,30);
? ? goods juice = new goods("匯源橙汁",3,20);
? ? goods water = new goods("農(nóng)夫山泉",2,30);
? ? goods coffee = new goods("雀巢咖啡",5,20);

? ? //顯示函數(shù)
? ? public void show()
? ? {
? ? ? ? System.out.println("現(xiàn)還有以下商品供您選擇:");
? ? ? ? System.out.println("1、"+beer.goodsname+"\t價(jià)格:"+beer.price+"\t剩余:"+beer.number);
? ? ? ? System.out.println("2、"+juice.goodsname+"\t價(jià)格:"+juice.price+"\t剩余:"+juice.number);
? ? ? ? System.out.println("3、"+water.goodsname+"\t價(jià)格:"+water.price+"\t剩余:"+water.number);
? ? ? ? System.out.println("4、"+coffee.goodsname+"\t價(jià)格:"+coffee.price+"\t剩余:"+coffee.number);
? ? ? ? System.out.println("5、退出購(gòu)物");
? ? }

? ? //購(gòu)買(mǎi)函數(shù)
? ? public void shop(int choose,int num)
? ? {
? ? ? ? ? ? switch (choose)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? case 1://如果選擇的是商品“1”
? ? ? ? ? ? ? ? ? ? if(beer.number == 0)//如果當(dāng)前的庫(kù)存為0
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("商品已售完,等待補(bǔ)貨!");//提示用戶商品已售完
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else if(num>beer.number)//如果用戶需要購(gòu)買(mǎi)的數(shù)量大于庫(kù)存的數(shù)量
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您需要購(gòu)買(mǎi)的商品庫(kù)存不足,請(qǐng)重新選擇!");//提示用戶當(dāng)前商品庫(kù)存不足
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? beer.number = beer.number - num;//更改庫(kù)存數(shù)量=購(gòu)買(mǎi)前的庫(kù)存數(shù)量-用戶購(gòu)買(mǎi)的數(shù)量
? ? ? ? ? ? ? ? ? ? ? ? success();//提示用戶購(gòu)買(mǎi)成功
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 2://如果選擇的是商品“2”
? ? ? ? ? ? ? ? ? ? if(juice.number == 0)//如果當(dāng)前的庫(kù)存為0
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("商品已售完,等待補(bǔ)貨!");//提示用戶商品已售完
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else if (num>juice.number)//如果用戶需要購(gòu)買(mǎi)的數(shù)量大于庫(kù)存的數(shù)量
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您需要購(gòu)買(mǎi)的商品庫(kù)存不足,請(qǐng)重新選擇!");//提示用戶當(dāng)前商品庫(kù)存不足
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else?
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ?? ?juice.number = juice.number - num;//更改庫(kù)存數(shù)量=購(gòu)買(mǎi)前的庫(kù)存數(shù)量-用戶購(gòu)買(mǎi)的數(shù)量
? ? ? ? ? ? ? ? ? ? ? ? success();//提示用戶購(gòu)買(mǎi)成功
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 3://如果選擇的是商品“3”
? ? ? ? ? ? ? ? ? ? if(water.number == 0)//如果當(dāng)前的庫(kù)存為0
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("商品已售完,等待補(bǔ)貨!");//提示用戶商品已售完
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else if (num>water.number)//如果用戶需要購(gòu)買(mǎi)的數(shù)量大于庫(kù)存的數(shù)量
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您需要購(gòu)買(mǎi)的商品庫(kù)存不足,請(qǐng)重新選擇!");//提示用戶當(dāng)前商品庫(kù)存不足
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else?
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ?? ?water.number = water.number - num;//更改庫(kù)存數(shù)量=購(gòu)買(mǎi)前的庫(kù)存數(shù)量-用戶購(gòu)買(mǎi)的數(shù)量
? ? ? ? ? ? ? ? ? ? ? ? success();//提示用戶購(gòu)買(mǎi)成功
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 4://如果選擇的是商品“4”
? ? ? ? ? ? ? ? ? ? if(coffee.number == 0)//如果當(dāng)前的庫(kù)存為0
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("商品已售完,等待補(bǔ)貨!");//提示用戶商品已售完
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else if (num>coffee.number)//如果用戶需要購(gòu)買(mǎi)的數(shù)量大于庫(kù)存的數(shù)量
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("您需要購(gòu)買(mǎi)的商品庫(kù)存不足,請(qǐng)重新選擇!");//提示用戶當(dāng)前商品庫(kù)存不足
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? else?
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ?? ?coffee.number = coffee.number - num;//更改庫(kù)存數(shù)量=購(gòu)買(mǎi)前的庫(kù)存數(shù)量-用戶購(gòu)買(mǎi)的數(shù)量
? ? ? ? ? ? ? ? ? ? ? ? success();//提示用戶購(gòu)買(mǎi)成功
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 5://如果輸入的是“5”
? ? ? ? ? ? ? ? ? ? System.out.println("歡迎您下次光臨!");//提示語(yǔ)
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? default://其他
? ? ? ? ? ? ? ? ? ? System.out.println("沒(méi)有此商品,請(qǐng)重新選擇");//提示語(yǔ)
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? }

? ? //如果購(gòu)買(mǎi)成功打印函數(shù)內(nèi)容
? ? public void success()
? ? {
? ? ? ? System.out.println("請(qǐng)選擇你的支付方式");
? ? System.out.println("1、掃碼支付\t2、投幣支付");//系統(tǒng)提示語(yǔ)
? ? Scanner sc = new Scanner(System.in);
int select = sc.nextInt();
if(select == 1)
{
System.out.println("請(qǐng)掃屏幕下方的二維碼進(jìn)行支付");
? ? ? ? ?? ??? ?System.out.println("購(gòu)買(mǎi)成功!");
}else if(select==2){
?? ?System.out.println("請(qǐng)投入硬幣");
}
? ? ? ? else
{
System.out.println("歡迎您下次光臨!");
}
? ? }
}

③商品類(lèi)

//商品類(lèi)
?class goods
?{
? ? String goodsname; ? //商品名稱(chēng)
? ? double price; ? ? ? //商品價(jià)格
? ? int number; ? ? ? ? //商品剩余數(shù)量

? ? //默認(rèn)初始化商品函數(shù)
? ? public goods()?
? ? {
? ? }
? ??
? ? //初始化商品函數(shù)
? ? public goods(String goodsname, double price, int number)
? ? {
? ? ?? ?this.goodsname = goodsname;
? ? ?? ?this.price = price;
? ? ?? ?this.number = number;
? ? }
?}

功能測(cè)試

測(cè)試可以從以下方面進(jìn)行:

①顧客開(kāi)始使用飲料自助售貨機(jī),進(jìn)入系統(tǒng)主界面:用戶可以根據(jù)界面提示選擇是否開(kāi)始購(gòu)物:
②當(dāng)顧客選擇不購(gòu)物,那么即將退出系統(tǒng):
③若顧客選擇了購(gòu)物,那么將進(jìn)入購(gòu)物界面,系統(tǒng)將展示所有的商品信息,以供選擇。在商品信息中,根據(jù)商品編號(hào),可以選擇自己想要的商品,假設(shè)此時(shí)用戶選擇了啤酒,并且購(gòu)買(mǎi)數(shù)量為15瓶:
④購(gòu)買(mǎi)完之后進(jìn)行結(jié)賬,本系統(tǒng)提供兩種結(jié)賬方式,一種是掃碼支付,一種是投幣支付,假設(shè)現(xiàn)在顧客選擇了投幣支付:
⑤在顧客第一次買(mǎi)完啤酒后,原本庫(kù)存為30現(xiàn)在減少為15,然后現(xiàn)在庫(kù)存還剩15,假使此時(shí)又有一個(gè)顧客需要購(gòu)買(mǎi)50瓶啤酒,很明顯庫(kù)存不夠,那么此時(shí)將給出提示,用戶無(wú)法完成購(gòu)買(mǎi):
⑥加入用戶在購(gòu)物時(shí)選擇了掃碼支付,那么系統(tǒng)將提示用戶掃屏幕下方的支付碼完成支付:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論