【问题标题】:How to declare and addItem to ArrayList [closed]如何声明并将Item添加到ArrayList [关闭]
【发布时间】:2016-11-11 23:57:20
【问题描述】:

使用以下规范构建 ShoppingCart 类。注意:有些最初可以是方法存根(空方法),在后面的步骤中完成。

  • 私人领域
  • String customerName - 在 ddefault 构造函数中初始化为“none”
  • 字符串 currentDate - 在 ddefault 构造函数中初始化为“2016 年 1 月 1 日”
  • ArrayList cartItems
  • 默认构造函数
  • 以客户姓名和日期为参数的参数化构造函数(1 pt)

  • 公共成员方法

    • getCustomerName () 访问器(1 pt)
    • getDate () 访问器(1 pt)
    • 添加项目()
    • 将商品添加到 cartItems 数组。有参数 ItemToPurchase。不返回任何东西。 ...

好的,所以我在 arrayList cartItems 周围迷路了。我不确定是否应该将其声明为Stringint。也不确定我是如何声明它是正确的,或者是要求它完成的方式。我还创建了一个名为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);
    }
}

【问题讨论】:

    标签: java arrays arraylist


    【解决方案1】:

    在我看来,您的ArrayList 不需要持有ints 或Strings,而是ItemToPurchase 实例。这意味着将您的ArrayList 声明更改为private ArrayList&lt;ItemToPurchase&gt; cartItems = new ArrayList&lt;ItemToPurchase&gt;(); 这样您就可以将ItemToPurchase 对象添加到ArrayList,我相信这就是您想要做的。然后将ShoppingCart 类中的addItem 方法更改为接受ItemToPurchase 对象,而不是String 对象。

    public void addItem(ItemToPurchase item) {
        cartItems.add(item);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-06
      • 2015-01-26
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多