| 
 | 
 
 
发表于 2024-2-7 20:26:03
|
显示全部楼层
 
 
 
哇,你已经完成了微信小程序点餐系统的作业,真厉害!让我来看看你的代码,然后提供一些优化建议吧。 
 
在Java中实现微信小程序点餐系统,首先需要考虑的是系统的基本功能和架构。我会尽量提供一个简单的示例代码,但考虑到实际项目的复杂性,代码可能不会完全适用于你的作业。 
 
首先,我们可以定义一个`Dish`(菜品)类,其属性包括菜名、价格等。这个类可以包含一些基本的方法,比如获取菜名和价格的方法: 
 
- public class Dish {
 
 -     private String name;
 
 -     private double price;
 
  
-     public Dish(String name, double price) {
 
 -         this.name = name;
 
 -         this.price = price;
 
 -     }
 
  
-     public String getName() {
 
 -         return name;
 
 -     }
 
  
-     public double getPrice() {
 
 -         return price;
 
 -     }
 
 - }
 
  复制代码 
 
接下来,我们可以创建一个`Menu`(菜单)类,用于存储菜品列表和相关的操作方法,比如添加菜品、显示菜单等: 
 
- import java.util.ArrayList;
 
 - import java.util.List;
 
  
- public class Menu {
 
 -     private List<Dish> dishes;
 
  
-     public Menu() {
 
 -         this.dishes = new ArrayList<>();
 
 -     }
 
  
-     public void addDish(Dish dish) {
 
 -         dishes.add(dish);
 
 -     }
 
  
-     public void displayMenu() {
 
 -         for (Dish dish : dishes) {
 
 -             System.out.println(dish.getName() + " - ¥" + dish.getPrice());
 
 -         }
 
 -     }
 
 - }
 
  复制代码 
 
接下来,我们可以创建一个`Order`(订单)类,用于存储顾客的点餐信息,包括菜品、数量等。这个类可以包含一些基本的方法,比如添加菜品和计算总价的方法: 
 
- import java.util.HashMap;
 
 - import java.util.Map;
 
  
- public class Order {
 
 -     private Map<Dish, Integer> items;
 
  
-     public Order() {
 
 -         this.items = new HashMap<>();
 
 -     }
 
  
-     public void addItem(Dish dish, int quantity) {
 
 -         if (items.containsKey(dish)) {
 
 -             items.put(dish, items.get(dish) + quantity);
 
 -         } else {
 
 -             items.put(dish, quantity);
 
 -         }
 
 -     }
 
  
-     public double calculateTotalPrice() {
 
 -         double totalPrice = 0.0;
 
 -         for (Map.Entry<Dish, Integer> entry : items.entrySet()) {
 
 -             Dish dish = entry.getKey();
 
 -             int quantity = entry.getValue();
 
 -             totalPrice += dish.getPrice() * quantity;
 
 -         }
 
 -         return totalPrice;
 
 -     }
 
 - }
 
  复制代码 
 
最后,我们可以创建一个`Main`类,用于模拟点餐系统的流程。在这个类中,你可以创建一些菜品实例、菜单实例和订单实例,并且可以通过调用相应的方法实现点餐功能。 
 
- public class Main {
 
 -     public static void main(String[] args) {
 
 -         // 创建菜品实例
 
 -         Dish dish1 = new Dish("黄焖鸡", 20.0);
 
 -         Dish dish2 = new Dish("红烧肉", 25.0);
 
 -         Dish dish3 = new Dish("宫保鸡丁", 18.0);
 
  
-         // 创建菜单实例并添加菜品
 
 -         Menu menu = new Menu();
 
 -         menu.addDish(dish1);
 
 -         menu.addDish(dish2);
 
 -         menu.addDish(dish3);
 
  
-         // 创建订单实例
 
 -         Order order = new Order();
 
  
-         // 模拟顾客点餐
 
 -         order.addItem(dish1, 2);
 
 -         order.addItem(dish2, 1);
 
 -         order.addItem(dish3, 3);
 
  
-         // 显示菜单和订单总价
 
 -         menu.displayMenu();
 
 -         System.out.println("订单总价:¥" + order.calculateTotalPrice());
 
 -     }
 
 - }
 
  复制代码 
 
这只是一个简单的示例代码,你可以根据实际需求进行修改和扩展。希望这样的代码对你有所帮助,如果还有其他问题,欢迎继续提问!祝你在学习编程的路上越走越远! 
 
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |   
 
 
 
 |