Я пытаюсь объединить массив сортировки по возрастанию 2 в java. Я новичок в java, поэтому я не могу понять. В чем проблема со следующим кодом?
import java.lang.Math;
import java.util.Scanner;
public class Main
{
public static void main(String[] args) {
int[] a = {10, 20, 30, 40};
int[] b = {50, 60, 70, 80};
int[] z = merge(a, b);
System.out.println(z);
}
public static int[] merge(int[] a, int[] b) {
int[] result = new int[a.length + b.length];
int indexResult = 0;
int indexA = 0;
int indexB = 0;
while (indexResult < result.length) {
if (indexB >= a.length || a[indexA] <= b[indexB])
result[indexResult++] = b[indexB++];
else
result[indexResult++] = a[indexA++];
}
return result;
}
}
Моя ошибка
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
at Main.merge(Main.java:30)
at Main.main(Main.java:15)