用java语言写程序,现要对华为和小米两种手机产品进行入库,本案例要求编写一个模)商品入库的程序,可以在控制台输入入库商品的数量,最后打印出仓库中所有商品详细信息以及所有商 品的总库存数和库存商品总金额。 商品信息如下 •品牌型号 ·尺寸 ·价格 • 配置 ·库存 ·总价
时间: 2024-09-17 11:03:49 浏览: 49
Java实现商品入库.docx
在Java中,你可以创建一个`Product`类作为商品的基础模型,然后分别为华为和小米手机创建具体的子类如`HuaweiPhone`和`XiaomiPhone`,它们继承自`Product`并包含各自的属性。这里是一个简单的示例:
```java
class Product {
private String brand;
private String model;
private double size;
private double price;
private int inventory;
private double totalPrice;
// 构造函数、getter和setter省略
public void setBrand(String brand) { this.brand = brand; }
public void setModel(String model) { this.model = model; }
public void setSize(double size) { this.size = size; }
public void setPrice(double price) { this.price = price; }
public void setInventory(int inventory) { this.inventory = inventory; }
public void setTotalPrice(double totalPrice) { this.totalPrice = size * price; }
// 打印商品详情的方法
@Override
public String toString() {
return "品牌:" + brand + ", 模型:" + model + ", 尺寸:" + size + "cm, 价格:" + price + "元, 库存:" + inventory + ", 总价:" + totalPrice + "元";
}
}
class HuaweiPhone extends Product {
// 添加华为特有的属性和方法...
}
class XiaomiPhone extends Product {
// 添加小米特有的属性和方法...
}
public class Warehouse {
private List<Product> products;
public Warehouse() {
products = new ArrayList<>();
}
public void addProduct(Product product) {
products.add(product);
}
public void printWarehouseInfo() {
for (Product product : products) {
System.out.println(product);
}
System.out.println("总库存数:" + products.stream().mapToInt(Product::getInventory).sum());
System.out.println("库存商品总金额:" + products.stream().mapToDouble(Product::getTotalPrice).sum());
}
public static void main(String[] args) {
Warehouse warehouse = new Warehouse();
Scanner scanner = new Scanner(System.in);
System.out.print("请输入华为手机数量:");
int huaweiCount = scanner.nextInt();
for (int i = 0; i < huaweiCount; i++) {
HuaweiPhone huawei = new HuaweiPhone();
// 设置华为手机的具体属性
// ...
warehouse.addProduct(huawei);
}
// 同理处理小米手机...
warehouse.printWarehouseInfo();
}
}
```
在这个例子中,用户通过`Scanner`输入华为和小米手机的数量,并为每个手机实例设置相应的属性。最后,`printWarehouseInfo`方法会打印出所有商品的信息以及总库存数和总金额。
阅读全文