答案:通过定义Item类和ShoppingCart类,使用ArrayList管理商品,实现添加、删除、修改和统计功能。示例代码展示了商品合并、数量更新及总价计算,适用于学习和小型项目。

在Java中实现一个简易的购物车统计功能,可以通过面向对象的方式建模商品和购物车,结合集合类来管理商品数据。下面是一个简单但实用的实现方式。
每个商品应包含名称、单价和数量等基本信息。
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 String getName() {
return name;
}
public double getPrice() {
return price;
}
public int getQuantity() {
return quantity;
}
public void setQuantity(int quantity) {
this.quantity = quantity;
}
// 计算该商品小计
public double getSubtotal() {
return price * quantity;
}
@Override
public String toString() {
return name + " - ¥" + price + " × " + quantity + " = ¥" + getSubtotal();
}}
使用ArrayList存储商品,提供添加、删除、修改数量和统计总价的方法。
立即学习“Java免费学习笔记(深入)”;
import java.util.ArrayList;
import java.util.List;
<p>public class ShoppingCart {
private List<Item> items;</p><pre class='brush:java;toolbar:false;'>public ShoppingCart() {
items = new ArrayList<>();
}
// 添加商品,如果已存在则增加数量
public void addItem(Item newItem) {
for (Item item : items) {
if (item.getName().equals(newItem.getName())) {
item.setQuantity(item.getQuantity() + newItem.getQuantity());
return;
}
}
items.add(new Item(newItem.getName(), newItem.getPrice(), newItem.getQuantity()));
}
// 从购物车中移除商品
public boolean removeItem(String itemName) {
return items.removeIf(item -> item.getName().equals(itemName));
}
// 修改商品数量
public boolean updateQuantity(String itemName, int quantity) {
for (Item item : items) {
if (item.getName().equals(itemName)) {
item.setQuantity(quantity);
return true;
}
}
return false;
}
// 计算总金额
public double getTotal() {
double total = 0;
for (Item item : items) {
total += item.getSubtotal();
}
return total;
}
// 显示购物车内容
public void display() {
if (items.isEmpty()) {
System.out.println("购物车为空。");
} else {
System.out.println("购物车商品列表:");
for (Item item : items) {
System.out.println(item);
}
System.out.println("总计:¥" + getTotal());
}
}}
编写主程序测试添加商品、修改、删除和统计功能。
public class CartTest {
public static void main(String[] args) {
ShoppingCart cart = new ShoppingCart();
<pre class='brush:java;toolbar:false;'> cart.addItem(new Item("苹果", 5.0, 3));
cart.addItem(new Item("香蕉", 3.5, 2));
cart.addItem(new Item("苹果", 5.0, 2)); // 合并数量
cart.display();
// 修改数量
cart.updateQuantity("香蕉", 5);
System.out.println("\n修改香蕉数量为5后:");
cart.display();
// 删除商品
cart.removeItem("苹果");
System.out.println("\n删除苹果后:");
cart.display();
}}
这个实现适合学习或小型项目使用。它封装了基本操作,代码清晰,易于扩展。如需更复杂功能(如库存校验、优惠计算),可在现有结构上继续完善。基本上就这些。
以上就是在Java中如何实现简易的购物车统计功能的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号