预期的输出数组,其值为:1,1
实际输出获取错误:“线程中的异常”main“java.lang.ArrayIndexOutOfBoundsException:0”
我收到java.lang.ArrayIndexOutOfBoundsException
例外,我不知道为什么。请帮帮我。
这是我的Java文件,我有问题:
public class Solution {
//compare two arrays and if the value of any element is of a particular index is greater than the other array element, return the value as 1.
static int[] solve(int a0, int a1, int a2, int b0, int b1, int b2) {
int[] a = { a0, a1, a2 };
int[] b = { b0, b1, b2 };
int[] r = {};
int y = 1;
for (int x = 0; x <= a.length; x++) {
for (int i = 0; i <= a.length; i++) {
if (a[i] > b[i]) {
r[x] = y;
}
if (b[i] > a[i]) {
System.out.println(r);
r[x] = y;
}
if (b[i] == a[i]) {
System.out.println("");
}
}
}
return r;
}
public static void main(String[] args) throws IOException {
int[] result = solve(5, 6, 7, 3, 6, 10);
}
}
在此代码中获取java.lang.ArrayIndexOutOfBoundsException
。
感谢。
答案 0 :(得分:1)
您使用<=
作为比较运算符。在Java中,我们总是使用<
来遍历数组。在for循环中替换比较运算符应绕过ArrayIndexOutOfBoundsException
。