从另一个 class 添加到 ArrayList

Adding to an ArrayList from another class

我有两个 class。 MuseumPaintingPainting class 按预期工作,但我遇到 Museum class 的问题。 我们被要求创建一个方法签名,它将 addPainting(String, String) 具有两个参数 Artist 和 Location 并向博物馆绘画 collection.

添加一个新的 Painting

当我尝试编译代码时,找不到合适的匹配方法?

有人知道我在这里遗漏了什么吗?

public class Museum  {
    //creating the fields
    private ArrayList<Painting> paintings;
    private String name;

    /**
     * Create a Museum Class 
     */
    public Museum(String aMuseum) {
        paintings = new ArrayList<>();
        name = aMuseum;
    }

    /**
    * Add a painting from the Paintings class
    */
    public void addPainting(String artist, String location) {
        paintings.add(artist, location);
    }
}

您应该创建一个新的 Painting 对象,然后将其添加到绘画列表中。

而不是

paintings.add(artist, location);

你应该这样做:

Painting p = new Painting(artist, location);
paintings.add(p);

当然,你还应该实现Painting构造函数(在Paintingclass中)。