使用以下规范构建ShoppingCart类。注意:有些可能是最初的方法存根(空方法),需要在以后的步骤中完成。
参数化构造函数,它将客户名称和日期作为参数(1 pt)
公共成员方法
好的,所以我迷失在arrayList cartItems周围。我不确定是否应将其声明为String
或int
。也不确定我是如何宣布它是正确的还是要求它完成的方式。我还创建了一个名为ItemToPurchase
的类,我需要创建一个名为ShoppingCartManager
的类,它具有main方法。这是我到目前为止所做的事情(我从ShoppingCart
课程中取出了一些东西。)
ItemToPurchase.java
public class ItemToPurchase {
private String itemName;
private String itemDescription;
private int itemPrice;
private int itemQuantity;
public ItemToPurchase() {
itemName = "none";
itemPrice = 0;
itemQuantity = 0;
itemDescription = "none";
}
public void setDescription(String description) {
itemDescription = description;
}
public String getDescription() {
return itemDescription;
}
public String printItemCost() {
String str = getName() + " " + getQuantity() + " " + getPrice() + " " + (getQuantity() * getPrice());
return str;
}
public String printItemDescription() {
String k = getName() + " " + getDescription();
return k;
}
public void setName(String name) {
itemName = name;
}
public String getName() {
return itemName;
}
public void setPrice(int price) {
itemPrice = price;
}
public int getPrice() {
return itemPrice;
}
public void setQuantity(int quantity) {
itemQuantity = quantity;
}
public int getQuantity() {
return itemQuantity;
}
}
ShoppingCart.java
import java.util.ArrayList;
public class ShoppingCart {
Scanner sc = new Scanner(System.in);
private String customerName;
private String currentDate;
private ArrayList<String> cartItems = new ArrayList<String>();
public ShoppingCart(String customerName, String currentDate) {
customerName = "none";
currentDate = "January 1, 2016";
}
public void getCustomerName() {
}
public void getDate() {
}
public void addItem(String itemName) {
cartItems.add(itemName);
}
}
答案 0 :(得分:0)
在我看来,ArrayList
不需要保留int
或String
s,而是ItemToPurchase
个实例。这意味着将ArrayList
声明更改为private ArrayList<ItemToPurchase> cartItems = new ArrayList<ItemToPurchase>();
这样您就可以将ItemToPurchase
个对象添加到ArrayList
,我相信您正在尝试这样做。然后更改addItem
类中的ShoppingCart
方法以接受ItemToPurchase
个对象,而不是String
个对象。
public void addItem(ItemToPurchase item) {
cartItems.add(item);
}