用Java编写购物清单

购物清单的编写可以让我们方便地记录所需购买的物品,并在购物时进行管理。以下是实现该功能的流程和详细代码讲解。本文旨在帮助刚入行的小白开发者理解并实践购物清单的编写。

流程概述

在创建购物清单应用程序时,我们可以将整个过程分为以下几个步骤:

步骤 描述
1 创建商品类 (Item)
2 创建购物清单类 (ShoppingList)
3 在主程序中使用购物清单类

流程图

flowchart TD
    A[开始] --> B[创建商品类]
    B --> C[创建购物清单类]
    C --> D[在主程序中使用购物清单类]
    D --> E[结束]

详细步骤及代码实现

1. 创建商品类 (Item)

首先,我们需要创建一个 Item 类来表示购物清单中的单个商品。该类应包含商品名称和商品价格属性。

// Item.java
public class Item {
    private String name; // 商品名称
    private double price; // 商品价格

    // Item构造函数
    public Item(String name, double price) {
        this.name = name;
        this.price = price;
    }

    // 获取商品名称
    public String getName() {
        return name;
    }

    // 获取商品价格
    public double getPrice() {
        return price;
    }

    // 重写toString方法以便打印商品信息
    @Override
    public String toString() {
        return name + " - $" + price;
    }
}

2. 创建购物清单类 (ShoppingList)

接着,我们需要一个 ShoppingList 类来管理多个商品。我们将使用一个列表来存储商品。

// ShoppingList.java
import java.util.ArrayList;

public class ShoppingList {
    private ArrayList<Item> items; // 存储购物清单中的商品

    // ShoppingList构造函数
    public ShoppingList() {
        items = new ArrayList<>(); // 初始化购物清单
    }

    // 添加商品到购物清单
    public void addItem(Item item) {
        items.add(item);
    }

    // 显示购物清单
    public void displayList() {
        System.out.println("购物清单:");
        for (Item item : items) {
            System.out.println(item); // 打印每个商品的信息
        }
    }

    // 计算购物清单的总价
    public double getTotalPrice() {
        double total = 0;
        for (Item item : items) {
            total += item.getPrice(); // 累加每个商品的价格
        }
        return total;
    }
}

3. 在主程序中使用购物清单类

最后,我们需要一个主程序来测试购物清单。从命令行获取输入并展示购物清单。

// Main.java
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        ShoppingList shoppingList = new ShoppingList(); // 创建购物清单对象
        Scanner scanner = new Scanner(System.in); // 创建Scanner对象以便接收用户输入

        while (true) {
            System.out.println("请输入商品名称(输入'结束'以结束):");
            String name = scanner.nextLine(); // 获取商品名称

            if (name.equalsIgnoreCase("结束")) {
                break; // 如果输入结束,退出循环
            }

            System.out.println("请输入商品价格:");
            double price = scanner.nextDouble(); // 获取商品价格
            scanner.nextLine(); // 消耗换行符

            Item item = new Item(name, price); // 创建商品对象
            shoppingList.addItem(item); // 添加商品到购物清单
        }

        shoppingList.displayList(); // 显示购物清单
        System.out.println("总价是: $" + shoppingList.getTotalPrice()); // 打印总价
        scanner.close(); // 关闭Scanner对象
    }
}

总结

通过上述步骤,你已成功创建了一个简单的购物清单程序。这个项目可以帮助你理解类的使用、如何管理集合以及如何进行用户输入等基本Java编程知识。你可以在此基础上扩展功能,例如添加删除商品的功能,或实现图形用户界面(GUI)。编程的乐趣在于不断探索和实践,希望你在今后的学习中能不断进步!