从另一个 class 添加到 ArrayList
Adding to an ArrayList from another class
我有两个 class。 Museum
和 Painting
。
Painting
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
构造函数(在Painting
class中)。
我有两个 class。 Museum
和 Painting
。
Painting
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
构造函数(在Painting
class中)。