自动售货机java怎么编程

时间:2025-01-26 21:27:29 网络游戏

实现一个简单的Java自动售货机程序,可以分为以下几个步骤:

选择商品:

用户可以通过输入商品编号来选择商品。

投币:

用户需要投入足够的硬币进行支付。

支付:

判断用户投入的硬币是否足够支付所选商品的价格。

出货:

在支付成功后,自动售货机会进行商品出货操作。

找零:

出货完成后,计算并找零给用户。

下面是一个简单的Java代码示例,展示了如何实现上述功能:

```java

import java.util.Scanner;

public class SimpleVendingMachine {

private static final int[] products = {1, 2, 3}; // 商品编号

private static final int[] prices = {100, 200, 300}; // 商品价格(假设为1元硬币)

private static int balance = 0; // 用户余额

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.println("欢迎使用自动售货机!");

// 选择商品

System.out.println("请选择商品:");

for (int i = 0; i < products.length; i++) {

System.out.println((i + 1) + ". 商品" + products[i]);

}

int selectedProduct = scanner.nextInt() - 1;

// 投币

System.out.println("请投入硬币:");

int coin = scanner.nextInt();

// 支付

if (coin >= prices[selectedProduct]) {

balance += coin;

System.out.println("支付成功!您的余额为:" + balance + "元");

} else {

System.out.println("支付失败!余额不足。");

return;

}

// 出货

System.out.println("正在出货,请稍等...");

// 这里可以添加出货动画或声音效果

// 找零

int change = balance - prices[selectedProduct];

System.out.println("找零:" + change + "元");

balance = 0; // 重置余额

System.out.println("感谢使用,再见!");

scanner.close();

}

}

```

代码解释:

商品和价格数组:

定义了商品编号和对应的价格。

余额:

记录用户的当前余额。

选择商品:

通过用户输入选择商品编号。

投币:

通过用户输入获取投入的硬币数量。

支付:

判断硬币是否足够支付商品价格,如果足够则更新余额,否则提示支付失败。

出货:

打印出货信息(这里可以添加动画或声音效果)。

找零:

计算并打印找零金额,并重置余额。

扩展功能:

数据库连接:可以将商品信息存储在数据库中,实现更复杂的管理功能。

多种支付方式:可以扩展支持多种支付方式,如纸币、移动支付等。

用户账户:可以添加用户账户功能,记录用户的购买历史和余额。

通过以上步骤和代码示例,你可以实现一个简单的Java自动售货机程序。根据需求,你可以进一步扩展和优化功能。