我的产品格式如下:
public Item(String barcode, double price, int inStock) {
if (barcode == null) {
barcode = "";
}
if (price < 0) {
price = 0;
}
if (inStock < 0) {
inStock = 0;
}
this.barcode = barcode;
this.price = price;
this.inStock = inStock;
}
ArrayList
将项目存储在另一个类中:
public class Inventory {
private ArrayList<Item> currentInventory;
public Inventory() {
this.currentInventory = new ArrayList<Inventory>();
}
/**
* Adds default products to the inventory
*/
public void inventoryDefault() {
this.currentInventory("JMS343", 100.00, 5);
this.currentInventory("RQ090", 50.00, 20);
}
我无法弄清楚如何将2个项目添加为默认值,或始终在currentInventory
中,直到被用户删除。我也尝试过:
public void inventoryDefault() {
this.currentInventory.add(JMS343, 100.00, 5);
this.currentInventory.add(RQ090, 50.00, 20);
}
但是,这会显示JMS343
和RQ090
无法解析为变量的错误。我以为我是在创建它们,因为它只是一个字符串。任何帮助都会很棒。谢谢!
工作解决方案如下所示:
public void inventoryDefault() {
this.currentInventory.add(new Item("JMS343", 100.00, 5));
this.currentInventory.add(new Item("RQ090", 50.00, 20));
}
答案 0 :(得分:1)
对Inventory
类
public Inventory() {
this.currentInventory = new ArrayList<Inventory>();
this.currentInventory.add(new Item("JMS343", 100.00, 5));
this.currentInventory.add(new Item("RQ090", 50.00, 20);
}
答案 1 :(得分:1)
您需要使用构造函数构造Item
个对象,以将它们添加到ArrayList
。 E.g。
public void inventoryDefault() {
currentInventory.add(new Item("JMS343", 100.00, 5);
currentInventory.add(new Item("RQ090", 50.00, 20);
}
或者向Inventory
添加适当的功能,否则也可能有用:
public void addItem(String barcode, double price, int inStock) {
Item item = new Item(barcode, price, inStock);
currentInventory.add(item);
}
public void inventoryDefault() {
addItem("JMS343", 100.00, 5);
addItem("RQ090", 50.00, 20);
}