我有異常在線程「main」java.lang.ArrayIndexOutOfBoundsException:
錯誤。 Eclipse中說,我認爲這是在代碼錯誤「main」java.lang.ArrayIndexOutOfBoundsException
myArray[i][j] = tmpDouble;
這種說法,但我不知道爲什麼。
代碼:
public class MyClass {
private int N;
private double[][] myArray = new double[N][N];
private ArrayList<anObject> myList;
public MyClass(ArrayList<anObject> aList){
myList = new ArrayList<anObject>();
myList = aList;
HashSet<String> uniqueSet = new HashSet<String>();
String[] anArray = uniqueSet.toArray(new String[uniqueSet.size()]);
N = uniqueSet.size();
for (int i=0;i<N;i++){
for (int ii=0;ii<N;ii++){
myArray[i][ii] = 0.0;
}
}
}
for (int i=0;i<N;i++){
//if (i==j)myArray[i][j]=0;
for(anObject s : myList){
if (s.getName1().equals(arrayNameOfHashSet[i])){
tmpDouble = Math.abs(s.getScore1()-s.getScore2());
tmpString = s.getName2();
for (j=0;j<N;j++){
if (s.getName2().equals(arrayNameOfHashSet[i])){
break;
}
}
}
myArray[i][j] = tmpDouble;
}
}
}
剛纔那個'j'來自哪裏...?你的內循環使用'ii'作爲計數器。 –
這裏'j'是什麼? –
這裏'j'是什麼? –