定义Item类封装商品信息,包含名称、单价、数量及总价计算方法;2. 使用ArrayList存储多个商品对象;3. 遍历列表累加每项总价实现自动汇总,可选用Stream API简化计算;4. 结构清晰易扩展,支持后续添加折扣、分类统计等功能。

在Java中实现购物清单自动汇总,核心是通过对象封装商品信息,利用集合存储数据,并对价格进行累加计算。关键在于结构清晰、代码可扩展,适合后续添加折扣、分类统计等功能。
每个商品应包含名称、单价和数量。创建一个简单的POJO类来表示商品项。
示例:
public class Item {
private String name;
private double price; // 单价
private int quantity;
<pre class='brush:java;toolbar:false;'>public Item(String name, double price, int quantity) {
this.name = name;
this.price = price;
this.quantity = quantity;
}
public double getTotal() {
return price * quantity;
}
// getter 方法(toString 可选)
public String getName() { return name; }
public double getPrice() { return price; }
public int getQuantity() { return quantity; }
@Override
public String toString() {
return name + " × " + quantity + " = ¥" + String.format("%.2f", getTotal());
}}
立即学习“Java免费学习笔记(深入)”;
用ArrayList保存多个商品,便于动态增删和遍历。
import java.util.ArrayList;
import java.util.List;
<p>List<Item> shoppingList = new ArrayList<>();
shoppingList.add(new Item("苹果", 5.5, 3));
shoppingList.add(new Item("牛奶", 12.0, 2));
shoppingList.add(new Item("面包", 8.0, 1));</p>遍历列表,调用每个商品的getTotal方法,累加得到总金额。
double totalAmount = 0.0;
for (Item item : shoppingList) {
System.out.println(item); // 打印每项明细
totalAmount += item.getTotal();
}
System.out.println("总计:¥" + String.format("%.2f", totalAmount));
如果想更简洁,也可以使用Java 8的Stream API:
double total = shoppingList.stream()
.mapToDouble(Item::getTotal)
.sum();
基本上就这些。结构简单,易于维护,后续可以加入类别、优惠券、税率等逻辑扩展功能。
以上就是在Java中如何实现购物清单自动汇总的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号