首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简短项目:电子产品库存

简短项目:电子产品库存
EN

Stack Overflow用户
提问于 2019-03-22 04:33:00
回答 2查看 79关注 0票数 1

我正在做我的简短项目,作为一种电子商店库存。下面是文本文件中的商品编号、描述、数量和价格的列表:

代码语言:javascript
复制
65321,Tablet,54,150.00
91524,Monitors,24,125.50
25013,Printers,30,65.75
32841,Router,67,90.15
53214,Modem,50,50.50
26442,Hard Drive,14,40.89
30224,Power Supplies,44,125.44
41557,CPU,39,149.54
71561,Headphones,40,75.24

这就是我到目前为止所做的:

InventoryCalculate.java

代码语言:javascript
复制
ArrayList<BookItem> inventory = new ArrayList<>();
        BufferedReader inFile = new BufferedReader(new FileReader("C:\\Users\\Documents\\Data\\stock.txt"));
        String line;
        line = input.nextLine();
        String[] tokens = line.split(",");
        int itemNumber = Integer.parseInt(tokens[0]);
        String description = tokens[1];
        int quantity = Integer.parseInt(tokens[2]);
        double unitCost = Double.parseDouble(tokens[3]);

        System.out.println("Inventory Item");
        System.out.println("Number  Description           Quantity  Unit Price          Value");

Inventorystock.java

代码语言:javascript
复制
public class InventoryItem {

private int itemNumber;
private String description;
private int quantity;
private double unitCost;

public InventoryItem(int itemNumber, String description, int quantity, double unitCost) {
    this.itemNumber = itemNumber;
    this.description = description;
    this.quantity = quantity;
    this.unitCost = unitCost;
}

public int getItemNumber() {
    return itemNumber;
}

public void setItemNumber(int itemNumber) {
    this.itemNumber = itemNumber;
}

public String getDescription() {
    return description;
}

public void setDescription(String description) {
    this.description = description;
}

public int getQuantity() {
    return quantity;
}

public void setQuantity(int quantity) {
    this.quantity = quantity;
}

public double getUnitCost() {
    return unitCost;
}

public void setUnitCost(double unitCost) {
    this.unitCost = unitCost;
} }

我很难弄清楚如何得到每一件商品的总价值。下面是我需要看到的结果,如下所示

预期输出:

代码语言:javascript
复制
Number  Description           Quantity  Unit Price         Value
 65321  Tablets                     54      150.00      8,100.00
 91524  Monitors                    24      125.50      3,012.00
 25013  Printers                    30       65.75      1,972.50
 32841  Routers                     67       90.15      6,040.05
 53214  Modems                      50       50.50      2,525.00
 26442  Hard Drives                 14       40.89        572.46
 30224  Power Supplies              44      125.44      5,519.36
 41557  CPU                         39      149.54      5,832.06
 71561  Headphones                  40       75.24      3,009.60
EN

回答 2

Stack Overflow用户

发布于 2019-03-22 05:07:43

创建一个方法,该方法获取项目的总数量,将其乘以单位成本,然后返回结果。将以下代码添加到InventoryItem类中。

代码语言:javascript
复制
 public double getTotalValueOfItem()
 {
      return unitCost * quantity;
 }
票数 0
EN

Stack Overflow用户

发布于 2019-03-22 05:13:45

在InventoryItem类中添加另一个属性作为totalValue,并使用您的逻辑添加setter和getter方法。在显示细节的方法中保持总值计算的最好方法。

代码语言:javascript
复制
public class InventoryItem {

    private int itemNumber;
    private String description;
    private int quantity;
    private double unitCost;
    private double totalValue;

    public InventoryItem(int itemNumber, String description, int quantity, double unitCost) {
        this.itemNumber = itemNumber;
        this.description = description;
        this.quantity = quantity;
        this.unitCost = unitCost;
    }

    public int getItemNumber() {
        return itemNumber;
    }

    public void setItemNumber(int itemNumber) {
        this.itemNumber = itemNumber;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public int getQuantity() {
        return quantity;
    }

    public void setQuantity(int quantity) {
        this.quantity = quantity;
    }

    public double getUnitCost() {
        return unitCost;
    }

    public void setUnitCost(double unitCost) {
        this.unitCost = unitCost;
    }     

    public double getTotalValue() {
        return totalValue;
    }

    public void setTotalValue(int quantity, double unitCost) {
        this.totalValue = (double) quantity * unitCost;
    } 

}

您可以添加此方法来打印项目详细信息

代码语言:javascript
复制
public void printDetails() {
 System.out.println("Number\tDescription\tQuantity\tUnit Price\tValue");
 List < InventoryItem > inventoryItemsList = new ArrayList < InventoryItem > ();
 inventoryItemsList.add(new InventoryItem(1, "description 1", 2, 50.0));
 inventoryItemsList.add(new InventoryItem(2, "description 2", 3, 40.0));
 for (InventoryItem item: inventoryItemsList) {
     System.out.println(item.itemNumber + "\t" + item.description + "\t" + item.quantity + "\t" + item.unitCost + "\t" + item.totalValue);
 }
}

您可以将库存项目的详细信息存储为字符串或列表,如printDetails方法中所示。希望这个"printDetails“方法能解决你的问题。如果您确实希望将商品详细信息存储为字符串,则可以将所有商品详细信息存储到字符串数组中。

确保通过以下方式导入所需的库和模型类。

代码语言:javascript
复制
import java.util.List;
import java.util.ArrayList;
import <package>.InventoryItem;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55288825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档