public static int[] organizaC(int[] v) {
int i, temp = 0;
if (v.length > 0) {
for (i = 0; i < v.length; i++) {
if (v[i] > v[i + 1]) {
temp = v[i];
v[i] = v[i + 1];
v[i + 1] = temp;
i = 0;
}
}
return v;
} else {
return null;
}
}
尝试使用此功能时遇到ArrayOutofBoundsIndex
异常,但IDE不允许我使用调试器。有人知道发生了什么吗?我会造成一些越野车吗?
答案 0 :(得分:3)
想象一下,当i
等于v.length - 1
,即if语句时会发生什么:
if(v[v.length-1] > v[v.length-1+1])
您尝试在索引v.lenght
处访问数组,但是随着数组的索引从0
到v.length-1
,您将超出范围!