当我尝试运行以下代码时,遇到了一个问题:
ArrayList paretoSet=new ArrayList(); // contains a collection of ArrayList
ArrayList<Integer> toPass=new ArrayList<Integer>();
int[] fParetoSet=new int[ParetoSet.size()];
int[] gParetoSet=new int[ParetoSet.size()];
for (int i=0;i<paretoSet.size();i++){
toPass.clear();
toPass.add((Integer)paretoSet.get(i));
int [] totake=calculate(toPass);
fParetoSet[i]=totake[0];
gParetoSet[i]=totake[1];
}
`claculate(ArrayList x)`是一个方法,它接受一个整数数组列表并返回一个整数数组。我不能将Paretoset设置为整数数组列表,因为这会在程序的其他部分中创建问题。我在以下代码行中遇到了异常:toPass.add((Integer)paretoSet.get(i));
错误提示为java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.Integer。我该如何解决这个问题?
提前感谢。
PareToSet
应该以小写字母开头;一开始我还以为你在调用静态方法。 - markspaceParetoSet
中包含了什么。我猜它是ArrayList
,但请展示给我们以确认。 - Sotirios DelimanolisArrayList<ArrayList<Integer>>
,对吗? - Steve McKay