知识屋:更实用的电脑技术知识网站
所在位置:首页 > 教育

用Java写一个实现自动售货机功能的小程序

发表时间:2022-03-25来源:网络

用Java写一个实现自动售货机功能的小程序

输入Scanner类思考自动售货机的动作要实现这些动作就要写方法main方法进行总结处理完整代码相关提示大概流程祝您开心每一天!

输入Scanner类

Java中键入引用到Scanner类:import java.util.Scanner;
创建对象Scanner scan = new Scanner(System.in);

思考自动售货机的动作

首先自动售货机会显示价格,余额,总消费,可购买商品数量,需要购买的商品数量…(其余可自行添加发挥)
所以有:

int price = 8;//假设这个机器只有一类商品 int balance = 0; int total = 0; int canTimes; int buyTimes;

要实现这些动作就要写方法

我们可以写一个show()方法,用来进行充值,显示余额,可购买数量,和相关提示:

void show() { System.out.println("欢迎光临!本售货机只贩卖一种商品,价格为:"+price+"元"); System.out.println("您当前余额为:"+balance+"元"); if(balance System.out.println("您当前余额为:"+balance+"元"); }else { System.out.println("充值失败!"); } canTimes = balance/price; System.out.println("您还能购买"+canTimes+"个商品"); } }

然后再写一个buyFood()方法,用来购买商品:

void buyFood() { if(balance>price) { System.out.println("请问您需要购买几个商品:"); buyTimes = scan.nextInt(); balance = balance - price * buyTimes; total = price * buyTimes; if(buyTimes System.out.println("购买失败!"); } }else { System.out.println("购买失败!"); } }

main方法进行总结处理

public static void main(String[] args) { vm.show(); vm.buyFood(); scan.close(); }

完整代码

import java.util.Scanner; /* * 一个自动售货机 * 原创:Zohing */ public class VendingMachine { static VendingMachine vm = new VendingMachine(); static Scanner scan = new Scanner(System.in); int price = 8; int balance = 0; int total = 0; int canTimes; int buyTimes; void show() { System.out.println("欢迎光临!本售货机只贩卖一种商品,价格为:"+price+"元"); System.out.println("您当前余额为:"+balance+"元"); if(balance System.out.println("您当前余额为:"+balance+"元"); }else { System.out.println("充值失败!"); } canTimes = balance/price; System.out.println("您还能购买"+canTimes+"个商品"); } } void buyFood() { if(balance>price) { System.out.println("请问您需要购买几个商品:"); buyTimes = scan.nextInt(); balance = balance - price * buyTimes; total = price * buyTimes; if(buyTimes System.out.println("购买失败!"); } }else { System.out.println("购买失败!"); } } public static void main(String[] args) { vm.show(); vm.buyFood(); scan.close(); } }

相关提示

Scanner类键入,记得你的代码中在最后需要键入的地方写上scan.close();这里的scan是你创建的对象名还有main方法是按顺序一步一步执行的,你可以实践一下将vm.show();和vm.buyFood();交换一下位置。scan.nextInt()是表示你输入的整数,所以你代码出现几个scan.nextInt()运行后操作台会让你键入几次,所以代码思路要理清楚我的代码创建对象是写在main方法体外的,所以创建的时候要加上static,当然你也可以写在main函数里我的代码还不精,代码是死的,人是活的。提供一个模板,大家可随意发挥!

大概流程

售货机 顾客 余额为:0 请充值: 我要充值 余额为:?能够买:?个请购买: 我要买?个 购买成功,余额为? 售货机 顾客

祝您开心每一天!

收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜