Как поменять элементы массива в обратном порядке в Java
Напишите программу, которая меняет местами элементы одномерного массива из String в обратном порядке. Не используйте дополнительный массив для хранения результатов.
Решение:
Комментарии к задаче:
В результате выполнения этого кода получим перевернутый массив: вместо «Каждый охотник желает знать где сидит фазан» — «фазан сидит где знать желает охотник Каждый «
Как была решена задача? Основная ее часть — это фрагмент:
Он по очереди меняет местами противоположные элементы массива, используя как посредника дополнительную переменную String temp (temp — от temporary, «временный»). Можно было бы обойтись и без нее, если бы массив хранил переменные числового типа.
Тут есть a[i] и малопонятное a[n-i-1]. Но на самом деле n-i-1 это просто формула для определения «противоположного» элемента массива:

Если бы мы имели массив, который бы состоял из элементов a, b, c, d, e и f, то есть массив из 6 элементов (n=6), «противоположным» (то есть элементом a[n-i-1]) для каждого из них были бы f для a, e для b и d для c. Цикл из фрагмента кода выполнялся бы три раза, до элемента d (i=0, 1, 2). Граница выполнения массива показана оранжевой линией на рисунке.
Так, обратите внимание, что мы не должны проходить циклом весь массив, чтобы поменять его элементы местами.
Надеемся — наша статья была Вам полезна. Есть возможность записаться на наши курсы по Java. Детальную информацию смотрите у нас на сайте.
Реверс массива в Java
Чтобы изменить массив, поменять местами первый элемент с последним элементом и второй элементом со вторым последним элементом, и так далее, если массив имеет нечетную длину оставить средний элемент, как есть.
Вкратце поменяйте местами 1-й элемент с 1-м элементом из последнего, второй элемент со вторым элементом из последнего, т.е. i-й элемент с i-м элементом из последнего, вам нужно сделать это до достижения средней точки массива.
Если i – первый элемент массива (length of the array –i-1) будет последним элементом, следовательно, поменять array[i] на массив [(length of the array –i-1)] от начала до средняя точка массива:
Пример реверса массива Java
Средняя оценка 3.6 / 5. Количество голосов: 17
Спасибо, помогите другим — напишите комментарий, добавьте информации к статье.
Или поделись статьей
Видим, что вы не нашли ответ на свой вопрос.
Помогите улучшить статью.
Напишите комментарий, что можно добавить к статье, какой информации не хватает.
Замена примитивов и объектов в Java
В этом посте мы обсудим, как поменять местами примитивы и объекты в Java.
Мы знаем, что наиболее распространенным решением для замены двух целых чисел в C/C++ является создание утилиты swap() метод с использованием указателей в C или ссылок в C++, как показано ниже:
Это не будет работать в Java, так как Java передается по значению, и невозможно создать метод для замены двух примитивов в Java. В этом посте обсуждаются некоторые обходные пути/трюки для замены целых чисел в Java.
1. Замена примитивов
Вот один из правдоподобных способов замены двух целых чисел (например, a а также b ) на Java. Идея состоит в том, чтобы присвоить значение переменной a к переменной b после передачи переменной b к swap() метод. Тогда мы просто возвращаемся b от swap() метод, который назначается a внутри вызывающего метода.
Reverse an Array in Java

There are many ways of reversing an array, and here we consider 5. For Option 1, an array is reversed using an additional array filled in ascending order from the end of the original array (descending), in Option 2 an in-place reversal is carried out where array elements at the beginning and end are swapped over, in Option 3, the reverse() method from the Collections framework is used to do the reversal, in Option 4, List.add() and List.remove() are used, and finally, in Option 5, recursion is used.