用arraylist模拟实现一个购物车程序,实现商品的添加删除,计算总价功能,用Java程序
时间: 2024-02-18 12:00:22 浏览: 49
好的,以下是使用ArrayList模拟购物车程序的Java代码:
```java
import java.util.ArrayList;
import java.util.Scanner;
public class ShoppingCart {
private ArrayList<String> items; // 商品列表
private ArrayList<Double> prices; // 商品价格列表
public ShoppingCart() {
items = new ArrayList<String>();
prices = new ArrayList<Double>();
}
// 添加商品及其价格
public void addItem(String item, double price) {
items.add(item);
prices.add(price);
}
// 删除商品及其价格
public void removeItem(String item) {
int index = items.indexOf(item);
if (index != -1) {
items.remove(index);
prices.remove(index);
}
}
// 计算总价
public double getTotal() {
double total = 0.0;
for (double price : prices) {
total += price;
}
return total;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
ShoppingCart cart = new ShoppingCart();
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();
switch (choice) {
case 1:
System.out.print("请输入商品名称:");
String item = scanner.next();
System.out.print("请输入商品价格:");
double price = scanner.nextDouble();
cart.addItem(item, price);
System.out.println("商品已添加到购物车。");
break;
case 2:
System.out.print("请输入要删除的商品名称:");
String itemToRemove = scanner.next();
cart.removeItem(itemToRemove);
System.out.println("商品已从购物车中删除。");
break;
case 3:
double total = cart.getTotal();
System.out.println("购物车中的商品总价为:" + total);
break;
case 4:
System.out.println("谢谢使用,再见!");
System.exit(0);
default:
System.out.println("输入无效,请重新选择操作。");
break;
}
}
}
}
```
在这个程序中,我们使用了两个ArrayList对象分别记录商品和价格,然后提供了三个方法来添加商品、删除商品和计算总价。在main方法中,我们使用一个无限循环来接受用户的输入并执行相应的操作,直到用户选择退出程序为止。