帮我写一段java购物车的代码
时间: 2023-09-03 18:28:10 浏览: 147
### 回答1:
public class ShoppingCart {
private List<String> cartItems; public ShoppingCart() {
this.cartItems = new ArrayList<String>();
} public void addItem(String item) {
this.cartItems.add(item);
} public void removeItem(String item) {
this.cartItems.remove(item);
} public List<String> getCartItems() {
return this.cartItems;
}
}
### 回答2:
当然可以帮你编写一个简单的Java购物车代码。下面是一个基本的购物车程序示例,你可以根据需求进行修改和扩展:
```java
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class ShoppingCart {
public static void main(String[] args) {
// 创建购物车
Map<String, Integer> cart = new HashMap<>();
Scanner scanner = new Scanner(System.in);
String itemName;
int itemQuantity;
String continueShopping = "Y";
while (continueShopping.equalsIgnoreCase("Y")) {
// 输入商品信息
System.out.print("请输入商品名称:");
itemName = scanner.next();
System.out.print("请输入商品数量:");
itemQuantity = scanner.nextInt();
// 添加商品到购物车
addToCart(cart, itemName, itemQuantity);
// 是否继续购物
System.out.print("是否继续购物?(Y/N):");
continueShopping = scanner.next();
}
// 打印购物车内容
printCart(cart);
// 计算总价
int totalPrice = calculateTotalPrice(cart);
System.out.println("总价:" + totalPrice);
}
// 添加商品到购物车
private static void addToCart(Map<String, Integer> cart, String itemName, int itemQuantity) {
if (cart.containsKey(itemName)) {
int quantity = cart.get(itemName);
cart.put(itemName, quantity + itemQuantity);
} else {
cart.put(itemName, itemQuantity);
}
}
// 打印购物车内容
private static void printCart(Map<String, Integer> cart) {
System.out.println("购物车内容:");
for (Map.Entry<String, Integer> entry : cart.entrySet()) {
System.out.println(entry.getKey() + " × " + entry.getValue());
}
}
// 计算总价
private static int calculateTotalPrice(Map<String, Integer> cart) {
int totalPrice = 0;
// 假设每个商品单价为10
int unitPrice = 10;
for (Map.Entry<String, Integer> entry : cart.entrySet()) {
int quantity = entry.getValue();
totalPrice += unitPrice * quantity;
}
return totalPrice;
}
}
```
这段代码使用了`Map`来存储购物车的商品信息,键为商品名称,值为商品数量。通过循环的方式,不断向购物车中添加商品,然后根据用户需求打印购物车内容,并计算总价。
请注意,这仅仅是一个简单的购物车示例,实际场景中的购物车可能需要更复杂的功能和数据结构来实现。希望这个示例能对你有所帮助!
### 回答3:
当然可以帮您编写一段基本的Java购物车代码。以下是一个简单的示例:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
class Product {
private String name;
private double price;
public Product(String name, double price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public double getPrice() {
return price;
}
}
class ShoppingCart {
private List<Product> items;
public ShoppingCart() {
items = new ArrayList<>();
}
public void addItem(Product product) {
items.add(product);
System.out.println("已添加 " + product.getName() + " 到购物车");
}
public void displayItems() {
if (items.size() == 0) {
System.out.println("购物车为空");
return;
}
System.out.println("购物车中的商品:");
for (Product product : items) {
System.out.println(product.getName() + " - 价格:" + product.getPrice());
}
}
public double calculateTotal() {
double total = 0.0;
for (Product product : items) {
total += product.getPrice();
}
return total;
}
}
public class ShoppingCartApp {
public static void main(String[] args) {
ShoppingCart cart = new ShoppingCart();
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请选择操作:");
System.out.println("1. 添加商品到购物车");
System.out.println("2. 显示购物车中的商品");
System.out.println("3. 计算购物车中商品的总价");
System.out.println("4. 结束程序");
int choice = scanner.nextInt();
if (choice == 1) {
System.out.println("请输入商品名称:");
String name = scanner.next();
System.out.println("请输入商品价格:");
double price = scanner.nextDouble();
Product product = new Product(name, price);
cart.addItem(product);
} else if (choice == 2) {
cart.displayItems();
} else if (choice == 3) {
double total = cart.calculateTotal();
System.out.println("购物车中商品的总价为:" + total);
} else if (choice == 4) {
break;
} else {
System.out.println("无效的选择,请重新输入");
}
}
System.out.println("程序已结束");
scanner.close();
}
}
```
此代码演示了一个简单的购物车功能。用户可以选择添加商品到购物车、显示购物车中的商品、计算购物车中商品的总价或者退出程序。您可以根据需要对该代码进行修改和扩展。
阅读全文