配列を反転させるJavaの実装方法は何ですか?

Javaにおける配列の反転を実現する方法は次のとおりです。

  1. 新しい配列を使って:新しい配列を作成し、元の配列の最後から順に要素を新しい配列に格納し、最後に新しい配列を返します。
public static int[] reverseArray(int[] arr) {
    int[] result = new int[arr.length];
    int index = 0;
    for (int i = arr.length - 1; i >= 0; i--) {
        result[index] = arr[i];
        index++;
    }
    return result;
}
  1. 両端から入れ替え:配列の始点と終点の2つのポインタを用意し、ポインタの位置の要素を入れ替える。始点のポインタは後ろに1つ、終点のポインタは前に1つ移動させ、始点のポインタが終点のポインタ以上になるまで繰り返す。
public static void reverseArray(int[] arr) {
    int start = 0;
    int end = arr.length - 1;
    while (start < end) {
        int temp = arr[start];
        arr[start] = arr[end];
        arr[end] = temp;
        start++;
        end--;
    }
}
  1. コレクションのreverse()を使用して配列をリストに変換し、リストをreverse()メソッドで逆順にして、リストを配列に戻します。
import java.util.Arrays;
import java.util.Collections;

public static void reverseArray(int[] arr) {
    Integer[] temp = new Integer[arr.length];
    for (int i = 0; i < arr.length; i++) {
        temp[i] = arr[i];
    }
    Collections.reverse(Arrays.asList(temp));
    for (int i = 0; i < arr.length; i++) {
        arr[i] = temp[i];
    }
}

配列を反転させる一般的な3つの方法であり、求められる内容に応じて適切な方法を選択できる。

bannerAds