java小米商城购物车代码
时间: 2024-06-23 13:00:41 浏览: 7
在Java中,实现一个简单的购物车功能,比如在小米商城中,可能会涉及到`ShoppingCart`类来管理商品、添加商品、删除商品和计算总价。这里提供一个基础的示例,不包含数据库交互等细节:
```java
import java.util.ArrayList;
import java.util.List;
// 商品类,用于表示购物车中的商品
class Product {
String name;
double price;
int quantity;
// 构造方法、getter和setter省略
}
// 购物车类
class ShoppingCart {
private List<Product> products;
public ShoppingCart() {
this.products = new ArrayList<>();
}
// 添加商品到购物车
public void addProduct(Product product) {
products.add(product);
}
// 删除购物车中的商品
public boolean removeProduct(Product product) {
return products.remove(product);
}
// 更新商品数量
public void updateQuantity(Product product, int newQuantity) {
for (int i = 0; i < products.size(); i++) {
if (products.get(i).equals(product)) {
products.set(i, new Product(product.getName(), product.getPrice(), newQuantity));
break;
}
}
}
// 计算购物车总价
public double getTotalPrice() {
double totalPrice = 0;
for (Product product : products) {
totalPrice += product.getPrice() * product.getQuantity();
}
return totalPrice;
}
// 省略其他可能的方法,如清空购物车
}
// 使用示例
public class Main {
public static void main(String[] args) {
Product phone = new Product("小米11", 3999, 1);
Product laptop = new Product("小米笔记本Pro", 7999, 1);
ShoppingCart cart = new ShoppingCart();
cart.addProduct(phone);
cart.addProduct(laptop);
System.out.println("购物车中有商品:");
for (Product product : cart.products) {
System.out.println(product.getName() + " - " + product.getPrice());
}
System.out.println("购物车总价: " + cart.getTotalPrice());
cart.updateQuantity(phone, 2);
System.out.println("更新后手机数量: " + cart.products.stream().filter(p -> p.getName().equals("小米11")).mapToInt(Product::getQuantity).sum());
cart.removeProduct(laptop);
}
}
```