商店A经营5种商品的售卖,请为商店A设计一个结算程序
时间: 2024-10-12 10:06:37 浏览: 5
为了设计一个简单的商店A结算程序,我们可以考虑以下几个步骤:
1. 商品信息:定义一个商品类,包含属性如商品名称、价格和库存。
```java
class Product {
String name;
double price;
int stock;
// 构造函数、getter和setter省略
}
```
2. 商品列表:创建一个商品列表,存储所有五种商品实例。
```java
List<Product> productList = new ArrayList<>();
productList.add(new Product("商品1", 10.0, 20));
// 其他四种商品添加类似...
```
3. 结算功能:设计一个结算方法,计算购物车中商品总价并检查库存是否足够。
```java
double calculateTotal(List<Product> items) {
double total = 0;
for (Product item : items) {
if (item.stock > 0) {
total += item.price;
item.stock--;
} else {
System.out.println("商品 " + item.name + " 库存不足");
}
}
return total;
}
```
4. 用户交互:提供用户输入购买的商品名或索引,从列表中找到对应商品并更新库存。
```java
void checkout(String productName) {
for (int i = 0; i < productList.size(); i++) {
if (productName.equals(productList.get(i).getName())) {
double totalPrice = calculateTotal(Arrays.asList(productList.get(i)));
System.out.println("您选择了 " + productList.get(i).getName() + ", 总价为:" + totalPrice);
break;
}
}
}
```
5. 主程序循环:不断接收用户输入,直到结算完成。
```java
public static void main(String[] args) {
StoreA store = new StoreA();
while (true) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入要购买的商品名(或输入'q'退出): ");
String input = scanner.nextLine();
if ("q".equals(input)) {
break;
}
store.checkout(input);
}
}
```
阅读全文