Java创建一个自动贩卖机 能够添加饮料 打印欢迎词 列出饮料信息 付钱挑饮料 交付饮料并从贩卖机中弹出(对应空位空出) 显示购买后找的钱 显示贩卖机余额
时间: 2023-05-15 11:05:21 浏览: 137
好的,这是一个很有趣的问题。为了创建一个自动贩卖机,我们需要使用Java编程语言。我们可以使用面向对象编程的思想,创建一个VendingMachine类,该类可以添加饮料、列出饮料信息、付钱挑选饮料、交付饮料并从贩卖机中弹出、显示购买后找的钱和显示贩卖机余额。以下是一个简单的Java代码示例:
```
public class VendingMachine {
private List<Drink> drinks;
private double balance;
public VendingMachine() {
this.drinks = new ArrayList<>();
this.balance = 0.0;
}
public void addDrink(Drink drink) {
this.drinks.add(drink);
}
public void listDrinks() {
for (Drink drink : this.drinks) {
System.out.println(drink.getName() + " - " + drink.getPrice());
}
}
public void insertMoney(double money) {
this.balance += money;
}
public void purchaseDrink(String name) {
Drink drink = null;
for (Drink d : this.drinks) {
if (d.getName().equals(name)) {
drink = d;
break;
}
}
if (drink == null) {
System.out.println("Sorry, we don't have that drink.");
return;
}
if (this.balance < drink.getPrice()) {
System.out.println("Sorry, you don't have enough money.");
return;
}
this.balance -= drink.getPrice();
this.drinks.remove(drink);
System.out.println("Here's your " + drink.getName() + ". Enjoy!");
}
public void returnChange() {
System.out.println("Your change is " + this.balance);
this.balance = 0.0;
}
public void displayBalance() {
System.out.println("The vending machine's balance is " + this.balance);
}
}
public class Drink {
private String name;
private double price;
public Drink(String name, double price) {
this.name = name;
this.price = price;
}
public String getName() {
return this.name;
}
public double getPrice() {
return this.price;
}
}
```
在这个示例中,我们创建了一个VendingMachine类和一个Drink类。VendingMachine类有一个drinks列表和一个balance变量,用于存储饮料和贩卖机的余额。它有一个构造函数,用于初始化drinks列表和balance变量。它还有一些方法,例如addDrink()方法用于添加饮料,listDrinks()方法用于列出饮料信息,insertMoney()方法用于付钱,purchaseDrink()方法用于挑选饮料并交付饮料,returnChange()方法用于显示购买后找的钱,displayBalance()方法用于显示贩卖机余额。
我们还创建了一个Drink类,用于表示饮料。它有一个构造函数,用于初始化饮料的名称和价格。它还有两个方法,getName()方法用于获取饮料的名称,getPrice()方法用于获取饮料的价格。
这只是一个简单的示例,你可以根据自己的需求进行修改和扩展。希望这可以帮助你创建一个自动贩卖机。
阅读全文