我想在JcomboBoxe中显示名为CodeA(String类型)的变量中的每个项目。我有一条错误消息:
找不到
Album(int, String)
构造函数Album.Album()
的合适构造函数不适用(实际和形式参数列表长度不同)构造函数Album.Album(String, String, Chanteur, Date)
不适用(实际和形式参数列表长度不同)
ArrayList<Album> listeCats = daoLoc.selectAlbums();
listeCats.add(0, new Album(0,"*"));
for (Album cat : listeCats)
{
jComboBoxChanteur.addItem(cat);
}
所以我的问题出现在我的构造函数Album中?
public class Album
{
private String codeA;
private String titreA;
private Chanteur chantAlb;
private Date dateApp;
public Album() {}
public Album(String codeA, String titreA, Chanteur chantAlb, Date dateApp)
{
this.codeA = codeA;
this.titreA = titreA;
this.chantAlb = chantAlb;
this.dateApp = dateApp;
}
}
我不理解String
和Int
答案 0 :(得分:0)
您有两个构造函数:默认的构造函数和接受String
,String
,Chanteur
和Date
的构造函数。
然后您尝试创建一个新的Album
对象:
new Album(0,"*")
(您尝试使用Album
和int
作为构造函数参数创建String
对象。)
您需要添加参数以匹配其中一个构造函数,或者创建一个仅接受int
和String
的新参数。
编辑:
如果您只是想创建一个新的构造函数来接受int
和String
,则必须创建一个新的int
变量,然后创建新的构造函数:
int newVariableName;
public Album(int codeA, String titreA) {
this.newVariableName = codeA;
this.titreA = titreA;
}
如果0
应该是一个字符串,请在其周围添加引号:
new Album("0","*")