- Python (后端)tcjmbj.cn
python
class Product:
def init(self, name, price):
self.name = name
self.price = price
class ShoppingCart:
def init(self):
self.items = []
def add_item(self, product, quantity):
self.items.append((product, quantity))
def total_cost(self):
cost = 0
for product, quantity in self.items:
cost += product.price * quantity
return cost
使用示例
cart = ShoppingCart()
apple = Product(“Apple”, 0.99)
cart.add_item(apple, 5)
print(cart.total_cost()) # 输出 4.95
2. JavaScript (前端或后端)
javascript
class Product {
constructor(name, price) {
this.name = name;
this.price = price;
}
}
class ShoppingCart {
constructor() {
this.items = [];
}
addItem(product, quantity) {
this.items.push({product, quantity});
}
totalCost() {
let cost = 0;
this.items.forEach(({product, quantity}) => {
cost += product.price * quantity;
});
return cost;
}
}
// 使用示例
let cart = new ShoppingCart();
let apple = new Product(“Apple”, 0.99);
cart.addItem(apple, 5);
console.log(cart.totalCost()); // 输出 4.95
3. Java (后端)
java
public class Product {
private String name;
private double price;
// 构造器、getter、setter 等...
}
import java.util.ArrayList;
import java.util.List;
public class ShoppingCart {
private List items = new ArrayList<>();
public void addItem(Product product, int quantity) {
items.add(new ProductQuantity(product, quantity));
}
public double totalCost() {
double cost = 0;
for (ProductQuantity pq : items) {
cost += pq.getProduct().getPrice() * pq.getQuantity();
}
return cost;
}
// 内部类 ProductQuantity 用于存储产品和数量
private static class ProductQuantity {
private Product product;
private int quantity;
// 构造器、getter、setter 等...
}
}
// 使用示例(省略了 Product 和 ProductQuantity 的实现细节)
ShoppingCart cart = new ShoppingCart();
Product apple = new Product(“Apple”, 0.99);
cart.addItem(apple, 5);
System.out.println(cart.totalCost()); // 输出 4.95
请注意,这些代码只是购物车功能的简化示例,一个完整的购物商城系统还需要考虑用户认证、数据库交互、商品库存、订单处理、支付集成、前端界面等多个方面。由于生成一个完整的购物商城代码涉及大量的代码和复杂性,我无法在这里直接给出所有语言的完整示例。但我可以为你提供一个简化版的购物车功能的伪代码或代码片段,以便你可以理解如何在不同语言中实现类似的功能。
- Python (后端)
python
class Product:
def init(self, name, price):
self.name = name
self.price = price
class ShoppingCart:
def init(self):
self.items = []
def add_item(self, product, quantity):
self.items.append((product, quantity))
def total_cost(self):
cost = 0
for product, quantity in self.items:
cost += product.price * quantity
return cost
使用示例
cart = ShoppingCart()
apple = Product(“Apple”, 0.99)
cart.add_item(apple, 5)
print(cart.total_cost()) # 输出 4.95
2. JavaScript (前端或后端)
javascript
class Product {
constructor(name, price) {
this.name = name;
this.price = price;
}
}
class ShoppingCart {
constructor() {
this.items = [];
}
addItem(product, quantity) {
this.items.push({product, quantity});
}
totalCost() {
let cost = 0;
this.items.forEach(({product, quantity}) => {
cost += product.price * quantity;
});
return cost;
}
}
// 使用示例
let cart = new ShoppingCart();
let apple = new Product(“Apple”, 0.99);
cart.addItem(apple, 5);
console.log(cart.totalCost()); // 输出 4.95
3. Java (后端)
java
public class Product {
private String name;
private double price;
// 构造器、getter、setter 等...
}
import java.util.ArrayList;
import java.util.List;
public class ShoppingCart {
private List items = new ArrayList<>();
public void addItem(Product product, int quantity) {
items.add(new ProductQuantity(product, quantity));
}
public double totalCost() {
double cost = 0;
for (ProductQuantity pq : items) {
cost += pq.getProduct().getPrice() * pq.getQuantity();
}
return cost;
}
// 内部类 ProductQuantity 用于存储产品和数量
private static class ProductQuantity {
private Product product;
private int quantity;
// 构造器、getter、setter 等...
}
}
// 使用示例(省略了 Product 和 ProductQuantity 的实现细节)
ShoppingCart cart = new ShoppingCart();
Product apple = new Product(“Apple”, 0.99);
cart.addItem(apple, 5);
System.out.println(cart.totalCost()); // 输出 4.95
请注意,这些代码只是购物车功能的简化示例,一个完整的购物商城系统还需要考虑用户认证、数据库交互、商品库存、订单处理、支付集成、前端界面等多个方面。