[JAVA] 배열, ArrayList 내림차순, 오름차순 정렬

2023. 12. 10. 15:02JAVA

 

배열 오름차순 

 

public class JavaPractice {

    public static void main(String[] args) {

        int[] intList = {1, 2, 5, 3, 7, 9};
        String[] StringList = {"A", "C", "B"};

        Arrays.sort(intList);
        Arrays.sort(StringList);

        for (int num : intList) {
            System.out.println("num = " + num);
        }

        for (String s : StringList) {
            System.out.println("s = " + s);
        }

    }
}

1, 2, 3, 5, 7, 9, 
A, B, C,

 

배열 내림차순

 

특이사항으로 Int 배열 경우 같은 기본형 타입은 바로 reversed 가 되지 않기 때문에 Integer 배열 형태로 형변환을 해주어야 한다.

 

public class JavaPractice {

    public static void main(String[] args) {

        int[] intList = {1, 2, 5, 3, 7, 9};
        String[] StringList = {"A", "C", "B"};

        Integer[] IntegerList = Arrays.stream(intList).boxed().toArray(Integer[]::new);

        Arrays.sort(IntegerList, Comparator.reverseOrder());
        Arrays.sort(StringList, Comparator.reverseOrder());

        for (int num : IntegerList) {
            System.out.print(num + ", ");
        }

        for (String s : StringList) {
            System.out.print(s + ", ");
        }

    }
}

9, 7, 5, 3, 2, 1, 
C, B, A,

 

ArrayList 내림차순

 

public class JavaPractice {

    public static void main(String[] args) {

        ArrayList<Integer> arrayList = new ArrayList<>();

        arrayList.add(1);
        arrayList.add(2);
        arrayList.add(5);
        arrayList.add(3);
        arrayList.add(7);
        arrayList.add(9);

        Collections.sort(arrayList);

        System.out.println("arrayList = " + arrayList);

    }
}

arrayList = [1, 2, 3, 5, 7, 9]

 

ArrayList 오름차순

 

오름차순의 reverse 함수는 단순히 값을 뒤집는 역할이기에 내림차순 정렬을 한번 한뒤에 사용해야 정확히 오름차순 정렬이 된다

public class JavaPractice {

    public static void main(String[] args) {

        ArrayList<Integer> arrayList = new ArrayList<>();

        arrayList.add(1);
        arrayList.add(2);
        arrayList.add(5);
        arrayList.add(3);
        arrayList.add(7);
        arrayList.add(9);

		Collections.sort(arrayList);
        Collections.reverse(arrayList);

        System.out.println("arrayList = " + arrayList);

    }
}

arrayList = [9, 7, 5, 3, 2, 1]