Подскажите почему "правильный ответ" работает? public static void reverseArray(int[] array) { for (int i = 0; i < array.length / 2; i++) { int temp = array[i]; array[i] = array[array.length - i - 1]; array[array.length - i - 1] = temp; } } Начинаю подставлять числа и получается каша какая-то. Для простоты счёта для примера беру массив {1, 2, 3, 4, 5}. i=0. значит temp=1. array[0]=array[4-0-1] (array[3], то есть"4"). array[4-0-1]=1. Итог первого проворота цикла: {4, 2, 3, 1, 5}. i=1. значит temp=2. array[1]=array[4-1-1] (array[2], то есть "3"). array[4-1-1]=2. Итог второго цикла проворота цикла: {4, 3, 2, 1, 5}. так цикл выполняется пока i < array.length / 2 (длина 4. делим на 2, получаем 2. значит пока i < 2) значит цикл закончен и больше выполняться не будет. Где я не правильно считаю или подставляю числа? Или ошибка в логике самого цикла?