我正在尝试将一个包含字符串和整数的元素添加到位置2的arraylist。我有一些像
ArrayList<Data> arrl = new ArrayList<Data>();
arrl.add(new Data("mike",29));
arrl.add(new Data("Jim",49));
arrl.add(new Data("kate",37));
arrl.add(new Data(2, "Alex",31));
但这似乎不起作用。我在最后一行收到错误,说构造函数数据未定义。我需要一些指导。
EDIT。
我对最后一行做了一点改动
arrl.add(2, new Data("Alex",31));
for(int i=0;i<arrl.size();++i)
{
arrl.get(i).Print();
}
这会将arraylist打印在一行上,而不是每行上的新元素。我该如何纠正这个?
答案 0 :(得分:4)
你的论点是错误的(2是add
的参数,你把它放在Data
对象的构造函数中:
arrl.add(2, new Data("Alex",31));
答案 1 :(得分:3)
看来你有这个
的构造函数新数据(“迈克”,29)
但是没有这个
的构造函数新数据(2,“Alex”,31)
可能是“2”应该是arr1.add()
的参数,而不是new Data()
的参数。