如何在不破坏原始数组的情况下对数组进行排序?

use*_*ane 6 java arrays sorting

我有原始阵列

public static void main (String[] arg) {
  int[] array = {1,5,6,8,4,2}

  for (int i = 0; i < array.length; i++) {
    System.out.print("List 1 = " + array[i] + ",");
  }
  swap(array);
  for (int i = 0; i < array.length; i++) {
    System.out.print("List 2 = "+array[i] + ",");
  }
}
private static int swap (int[] list){
   Arrays.sort(list);
}
Run Code Online (Sandbox Code Playgroud)

输出是

 List 1 = 1,5,6,8,4,2
 List 2 = 1,2,4,5,6,8
Run Code Online (Sandbox Code Playgroud)

我想要的答案是

List 1 = 1,5,6,8,4,2
List 2 = 1,5,6,8,4,2
Run Code Online (Sandbox Code Playgroud)

甚至在分拣后.我该怎么做?

Juv*_*nis 19

int[] originalArray = {1,5,6,8,4,2};
int[] backup = Arrays.copyOf(originalArray,originalArray.length);
Arrays.sort(backup);
Run Code Online (Sandbox Code Playgroud)

在执行上面的代码之后,backup变得排序并originalArray保持相同.