#java #массивы
Почему не выводится перевернутый массив? то есть, последний элемент массива должен
стать первым и т.д.
public class Mane
{
public void sort(int[] massive){
int[]arraySort = new int[10];
for(int i = 4; i >= 0; i--){
arraySort[4 - i] = massive[i];
for(int a = 0; a < 5; a++){
massive[a] = arraySort[a];
}
}
}
public static void main(String[] arg){
int[] mass = {1,2,3,4,5};
Mane m = new Mane();
m.sort(mass);
for(int i: mass){
System.out.println(i);
}
}
}
Ответы
Ответ 1
Зачем два массива, зачем вложенные циклы? public void sort(int[] massive) { for (int i = 0; i < massive.length / 2; i++) { int tmp = massive[i]; massive[i] = massive[massive.length - i - 1]; massive[massive.length - i - 1] = tmp; } }Ответ 2
Collections.reverse(Arrays.asList(source)).toArray(new int[source.length]); да, это будет использовать избыточные ресурсы; нет, это не страшно https://stackoverflow.com/a/22828623/2908793Ответ 3
Всем спасибо за помощь, я разобрался public class Mane { public void sort(int[] massive){ int[]arraySort = new int[5]; for(int i = 4; i >= 0; i--){ arraySort[4 - i] = massive[i]; } for(int a = 0; a < 5; a++){ massive[a] = arraySort[a]; } } public static void main(String[] arg){ int[] mass = {1,2,3,4,5}; Mane m = new Mane(); m.sort(mass); for(int i: mass){ System.out.println(i); } } }Ответ 4
for(int i = 0; i < array.length; i++) array[i] =(-1)*array[i]; Arrays.sort(array); for(int i = 0; i < array.length; i++) array[i] =(-1)*array[i];
Комментариев нет:
Отправить комментарий