Почему данный метод копирует числа в возрастающем порядке? Хотя массив array1 отсортирован как убывающий.
array=Arrays.copyOf(array1,array.length);
А если использовать такой цикл
for (int j=0; j<array.length;j++)
{array[j]=array1[j]; }
То все присваивается как надо (в порядке убывания)?
package com.javarush.task.task07.task0728;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
/*
В убывающем порядке
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int[] array = new int[20];
for (int i = 0; i < 20; i++) {
array[i] = Integer.parseInt(reader.readLine());
}
sort(array);
for (int x : array) {
System.out.println(x);
}
}
public static void sort(int[] array) {
//напишите тут ваш код
Arrays.sort(array);
int[] array1 = new int[array.length];
for (int j=19; j>-1;j--)
{array1[array.length-j-1]=array[j];}
//array=Arrays.copyOf(array1,array.length);
for (int j=0; j<array.length;j++)
{array[j]=array1[j]; }
}
}