오름차순, 내림차순 정렬
1. 오름차순
import java.util.Arrays;
Arrays.sort(배열명);
<예시>
랜덤으로 0 ~ 99까지의 정수를 score 배열에 저장한 뒤 오름차순으로 정렬하여 출력하는 알고리즘입니다.
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] score = new int[8];
System.out.print("Before -> ");
for(int i = 0; i < score.length; i++) {
score[i] = (int)(Math.random() * 100);
System.out.print(score[i] + " ");
}
System.out.println();
Arrays.sort(score); //오름차순 정렬
System.out.print("After -> ");
for(int v : score) {
System.out.print(v + " ");
}
}
}
<콘솔>
2. 내림차순
import java.util.Arrays;
import java.util.Collections;
Arrays.sort(배열명, reverseOrder());
<예시>
위의 오름차순 예시와 동일하며 정수는 내림차순으로 정렬하여 출력하는 알고리즘입니다.
오름차순 정렬과 또 다른 점은 score 배열의 타입을 Integer로 선언한다는 점입니다.
내림차순으로 정렬하거나 또는 원하는 대로 정렬 방식을 설정하고자 할 때는 기본형으로 선언된 배열은 사용이 불가합니다. 즉, 래퍼 클래스를 사용해야 합니다.
Ex) int 타입의 경우 Integer 타입으로 선언
import java.util.Arrays;
import java.util.Collections;
public class Main {
public static void main(String[] args) {
Integer[] score = {88, 50, 38, 100, 90, 99, 74, 65};
System.out.print("Before -> ");
for(int a : score) {
System.out.print(a + " ");
}
System.out.println();
//내림차순이거나 또는 원하는 대로 정렬 조건을 설정하고자 할 때 -> 기본형(Primitive Type) 배열에는 적용이 안된다.
Arrays.sort(score, Collections.reverseOrder());
System.out.print("After -> ");
for(int b : score) {
System.out.print(b + " ");
}
System.out.println();
}
}
<콘솔>
2022.08.17
감사합니다!
'JAVA' 카테고리의 다른 글
[Java] 다형성(polymorphism) (0) | 2022.08.31 |
---|---|
[Java] 추상 클래스(abstract) (0) | 2022.08.19 |
[자바] 싱글톤 패턴(Singleton pattern) (0) | 2021.07.14 |
예외 처리 (0) | 2021.07.13 |
[자바] 공격 프로그램 구현해보기 (0) | 2021.07.11 |