我在新类中创建Arraylist
时遇到问题(我正在使用DrJava IDE)。作业是创建一个构造函数,其中n
彩票从1 to n
编号。
import java.util.ArrayList;
public class Tombola {
private ArrayList<Integer> arr;
public Tombola(int n){
for (int i = 0; i < n-1; i++){
this.arr.add(i) = i + 1;
}
}
}
我得到的错误是:
意外类型。
必需:变量。
发现:价值。
我尝试将n
和i
更改为整数,但它没有帮助。
答案 0 :(得分:4)
这是不正确的:
this.arr.add(i) = i + 1;
add(...)
方法没有为您提供作业的目标,因此将其指定为i+1
将无效。相反,您应该添加i+1
,如下所示:
this.arr.add(i + 1);
您的代码中还有两个错误:
1:这个循环
for (int i = 0; i < n-1; i++)
将迭代n-1
次,而不是n
次。要获得n
次迭代,请使用
for (int i = 0; i < n; i++) // <<== This is most common
或
for (int i = 0; i <= n-1; i++) // <<== This is less common
2:您的数组列表未初始化。您需要更改其声明如下:
private ArrayList<Integer> arr = new ArrayList<Integer>();
甚至
private List<Integer> arr = new ArrayList<Integer>();