Вот задача, код работает, домучал его. Но тут в том анекдоте, оно работает, но непонятно почему))
public static int[][] result = new int[2][];
public static int[] array = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

public static void main(String[] args) {

    int l = array.length;

    if (l%2==0){
        result[0] = Arrays.copyOfRange(array,0,(l/2));
        result[1] = Arrays.copyOfRange(array,(l/2),l);
    }
в консоли выдает {{1,2,3,4,5} {6,7,8,9,10}}. Все правильно, валидатор принимает, программа работает, но почему??? Ведь в первую половину я указываю добавить значения из основного массива - с нулевого по 5. Отсчет индекса значений массива идет с нуля, то есть теоретически мне должно вывести - 1,2,3,4,5,6 ! А выводит 1,2,3,4,5! Как будто игнорируется 0... Также и во второй половине, я указал вывести значение с индексом 10, но в массиве длинной 10 нет значения с индексом 10! В чем подвох, что я упускаю? Метод СOPY - отсчитывает значения просто по порядку а не с нуля, как обычно в массивах?