用Java编写一个食堂点餐程序,用户可以选择5种不同的餐品(如米饭、面条、饺子等),价格自拟。 并根据用餐时间(早餐、午餐、晚餐)决定价格,早餐打9折。 每位用户最多可以点5份餐品,超出数量时给予提示并完成订单。
时间: 2024-09-21 17:02:37 浏览: 38
好的,我们可以创建一个简单的Java程序来模拟这个食堂点餐系统。首先,我们需要定义一个菜单类`Menu`,包含餐品信息和价格,以及根据时间打折的方法;然后创建一个`Order`类,用于记录用户的订单;最后是一个`PointOfSale`类,处理用户的点餐过程。
```java
// Menu.java
class Menu {
String name;
double originalPrice;
public Menu(String name, double price) {
this.name = name;
this.originalPrice = price;
}
// 根据用餐时间打折
public double getPrice(String mealTime) {
if (mealTime.equals("早餐")) {
return originalPrice * 0.9; // 打9折
} else {
return originalPrice;
}
}
}
// Order.java
class Order {
int maxOrdersPerUser = 5;
int orderCount = 0;
void addItem(Menu item) {
if (orderCount < maxOrdersPerUser) {
orderCount++;
System.out.println("已添加:" + item.name + " (" + item.getPrice(mealTime) + ")");
} else {
System.out.println("对不起,您已达最大点餐数量限制!");
}
}
// 其他方法如计算总价...
}
// PointOfSale.java 或 Main.java
public class PointOfSale {
public static void main(String[] args) {
Menu rice = new Menu("米饭", 10);
Menu noodles = new Menu("面条", 12);
Menu dumplings = new Menu("饺子", 8);
// 假设这里有个函数getMealTime()获取当前用餐时间
String mealTime = getMealTime();
Order order = new Order();
order.addItem(rice);
order.addItem(noodles);
order.addItem(dumplings); // 添加其他菜品
// 更多用户操作...
}
}
阅读全文