当前位置: 首页 > 知识库问答 >
问题:

如何使用OOP在ArrayList中添加对象?

勾起运
2023-03-14

我有“BaseProduct”类--抽象的,“food”类--实现了BaseProduct,还有一个“推车”,里面放了很多食物。

public abstract class BaseProduct {

    private String name;
    private String brand;
    private Double price;

    protected BaseProduct(String name, String brand, Double price) {
        this.name = name;
        this.brand = brand;
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public Double getPrice() {
        return price;
    }

    public void setPrice(Double price) {
        this.price = price;
    }
}

类食品如下所示:

package Products.PerishableProducts;

import Products.BaseProduct;

import java.util.Date;

public class Food extends BaseProduct {

    private Date expirationDate;
    //sample date - 2020/04/20 -> yyyy-MM-dd
    //TODO:CHECK WHETHER OR NOT YOU HAVE EXPIRATION DATE DISCOUNTS WHEN ADDING ITEMS IN CART


    public Food(String name, String brand, Double price, Date expirationDate) {
        super(name, brand, price);
        this.expirationDate = expirationDate;

    }

    public Date getExpirationDate() {
        return expirationDate;
    }

    public void setExpirationDate(Date expirationDate) {
        this.expirationDate = expirationDate;
    }
    }

类“cart”(购物车)如下所示:

package Cart;

import Products.BaseProduct;
import java.util.List;

public class Cart {

 private static List<BaseProduct> products;


    //TODO:add products
    public List<BaseProduct> add(List<BaseProduct> products){
      
    }


    //TODO: remove products
}

共有1个答案

白坚壁
2023-03-14

要将产品添加到购物车中,请编写cart::add方法。初始化产品列表会有所帮助。然后看一下您选择的列表实现中的add方法。

申请折扣。使用getPrice(Date purchaseDate)方法重载Food中的getPrice方法。从super.getprice()返回价格,适当时减去折扣。您可能会发现使用getDiscount(Date purchaseDate)方法很有用,因为出纳员类希望获得总折扣。

 类似资料:
  • 问题内容: 我想向中添加一个对象,但是每次我向具有3个属性的新对象添加时,都会出现错误。 在这里,我正在尝试创建其对象并将其传递给的类。 问题答案: 创建对象时需要使用运算符 要不然 并且您的构造函数不应包含。否则它将成为您班上的一个方法。

  • 这里有两个类,查询语句和Stackov。arraylist用于存储查询语句类的对象。但是最近添加的对象覆盖了前一个对象。如何添加对象以使它们不被覆盖? QuerySentence.java Stackov.java

  • 我需要做一个方法,可以添加这些数据类型到一个arraylist内的cart类。但如果我写 它只会接收推车类型的数据,所以我不能输入食物或饮料,或Miscs类型的数据,甚至有相同的细节,如名称和价格。

  • 我想编写一个名为addNewPhone(Phone newPhone)的方法,将一个Phone添加到一个电话数组列表中; 电话类别: 车间类别: 主要类: 我知道我需要返回ArrayList,并且我需要在这个方法中接收Phone type对象,然后它应该返回ArrayList和一个新的phones,但我不知道为什么它不起作用。 Eclipse显示我符合的方法:“newPhone无法解析或未归档”。

  • 在android studio中,我试图放入一个整数的ArrayList中,其中包含标签id如下所示

  • 我正在尝试制作一个DnD字符生成器,部分原因是我需要一个可以通过其他方法编辑的统计列表,所以我试图在类级别添加它。我目前的代码是: 但是当我试图运行它时,我在每个“添加”行都有一个“预期标识符”错误。