<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本文範例為大家分享了java實現飲料自助售貨機的具體程式碼,供大家參考,具體內容如下
①使用者類
import java.util.Scanner; //使用者類 public class User { public static void main(String[] args)//主函數 { Scanner sc = new Scanner(System.in); shopping shopping = new shopping();//建立物件 System.out.println("歡迎使用XX大學飲料自動販賣機");//系統提示語 System.out.println("是否進行購物:1、是t2、否");//系統提示語 int select = sc.nextInt();//儲存客戶輸入的數位 if (select == 1)//如果客戶輸入的是「1」也就是需要進行購物 { shopping.show();//列印商品列表 System.out.println("請選擇相應編號!");//提示用於選擇商品 int choose = sc.nextInt();//儲存客戶輸入的商品編號 //邊界限定 while (choose > 5 || choose <= 0) { System.out.println("沒有此商品,請重新選擇!");//提示使用者輸入的編碼沒有對應的商品 choose = sc.nextInt();//再次儲存客戶輸入的編號 } if(choose == 5)//如果是「5」退出購物 { System.out.println("歡迎您下次光臨!"); return ; } System.out.println("請輸入購買數量!");//提示使用者輸入需要購買的數量 int num = sc.nextInt();//儲存使用者需要購買的數量 while (true) { shopping.shop(choose,num);//呼叫購買函數 System.out.println(); shopping.show();//顯示購買後的商品列表 System.out.println("如繼續購物,請再次選擇相應編號!"); choose = sc.nextInt();//儲存使用者輸入的商品編號 //邊界限定 while (choose > 5 || choose <= 0) { System.out.println("沒有此商品,請重新選擇!"); choose = sc.nextInt(); } if(choose == 5) { System.out.println("歡迎您下次光臨!"); break; } System.out.println("請輸入購買數量");//提示語 num = sc.nextInt();//儲存客戶購買數量 } } else//選擇「2」不進行購物 { System.out.println("歡迎下次光臨!"); } } }
②購買類
//購買類 class shopping { //建立商品 goods beer = new goods("啤酒",3,30); goods juice = new goods("匯源橙汁",3,20); goods water = new goods("農夫山泉",2,30); goods coffee = new goods("雀巢咖啡",5,20); //顯示函數 public void show() { System.out.println("現還有以下商品供您選擇:"); System.out.println("1、"+beer.goodsname+"t價格:"+beer.price+"t剩餘:"+beer.number); System.out.println("2、"+juice.goodsname+"t價格:"+juice.price+"t剩餘:"+juice.number); System.out.println("3、"+water.goodsname+"t價格:"+water.price+"t剩餘:"+water.number); System.out.println("4、"+coffee.goodsname+"t價格:"+coffee.price+"t剩餘:"+coffee.number); System.out.println("5、退出購物"); } //購買函數 public void shop(int choose,int num) { switch (choose) { case 1://如果選擇的是商品「1」 if(beer.number == 0)//如果當前的庫存為0 { System.out.println("商品已售完,等待補貨!");//提示使用者商品已售完 } else if(num>beer.number)//如果使用者需要購買的數量大於庫存的數量 { System.out.println("您需要購買的商品庫存不足,請重新選擇!");//提示使用者當前商品庫存不足 } else { beer.number = beer.number - num;//更改庫存數量=購買前的庫存數量-使用者購買的數量 success();//提示使用者購買成功 } break; case 2://如果選擇的是商品「2」 if(juice.number == 0)//如果當前的庫存為0 { System.out.println("商品已售完,等待補貨!");//提示使用者商品已售完 } else if (num>juice.number)//如果使用者需要購買的數量大於庫存的數量 { System.out.println("您需要購買的商品庫存不足,請重新選擇!");//提示使用者當前商品庫存不足 } else { juice.number = juice.number - num;//更改庫存數量=購買前的庫存數量-使用者購買的數量 success();//提示使用者購買成功 } break; case 3://如果選擇的是商品「3」 if(water.number == 0)//如果當前的庫存為0 { System.out.println("商品已售完,等待補貨!");//提示使用者商品已售完 } else if (num>water.number)//如果使用者需要購買的數量大於庫存的數量 { System.out.println("您需要購買的商品庫存不足,請重新選擇!");//提示使用者當前商品庫存不足 } else { water.number = water.number - num;//更改庫存數量=購買前的庫存數量-使用者購買的數量 success();//提示使用者購買成功 } break; case 4://如果選擇的是商品「4」 if(coffee.number == 0)//如果當前的庫存為0 { System.out.println("商品已售完,等待補貨!");//提示使用者商品已售完 } else if (num>coffee.number)//如果使用者需要購買的數量大於庫存的數量 { System.out.println("您需要購買的商品庫存不足,請重新選擇!");//提示使用者當前商品庫存不足 } else { coffee.number = coffee.number - num;//更改庫存數量=購買前的庫存數量-使用者購買的數量 success();//提示使用者購買成功 } break; case 5://如果輸入的是「5」 System.out.println("歡迎您下次光臨!");//提示語 break; default://其他 System.out.println("沒有此商品,請重新選擇");//提示語 break; } } //如果購買成功列印函數內容 public void success() { System.out.println("請選擇你的支付方式"); System.out.println("1、掃碼支付t2、投幣支付");//系統提示語 Scanner sc = new Scanner(System.in); int select = sc.nextInt(); if(select == 1) { System.out.println("請掃螢幕下方的二維條碼進行支付"); System.out.println("購買成功!"); }else if(select==2){ System.out.println("請投入硬幣"); } else { System.out.println("歡迎您下次光臨!"); } } }
③商品類
//商品類 class goods { String goodsname; //商品名稱 double price; //商品價格 int number; //商品剩餘數量 //預設初始化商品函數 public goods() { } //初始化商品函數 public goods(String goodsname, double price, int number) { this.goodsname = goodsname; this.price = price; this.number = number; } }
功能測試
測試可以從以下方面進行,並給出截圖:
①顧客開始使用飲料自助售貨機,進入系統主介面:使用者可以根據介面提示選擇是否開始購物:
②當顧客選擇不購物,那麼即將退出系統:
③若顧客選擇了購物,那麼將進入購物介面,系統將展示所有的商品資訊,以供選擇。在商品資訊中,根據商品編號,可以選擇自己想要的商品,假設此時使用者選擇了啤酒,並且購買數量為15瓶:
④購買完之後進行結賬,本系統提供兩種結賬方式,一種是掃碼支付,一種是投幣支付,假設現在顧客選擇了投幣支付:
⑤在顧客第一次買完啤酒後,原本庫存為30現在減少為15,然後現在庫存還剩15,假使此時又有一個顧客需要購買50瓶啤酒,很明顯庫存不夠,那麼此時將給出提示,使用者無法完成購買:
⑥加入使用者在購物時選擇了掃碼支付,那麼系統將提示使用者掃螢幕下方的支付碼完成支付:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45