본문 바로가기
Language/Java

자바 배열 정렬, 역정렬 방법

by wakestand 2020. 2. 9.
반응형

일단 배열 오름차순 정렬은

Arrays.sort(배열명);

으로 정렬이 가능한데

 

내림차순 정렬의 경우에는 int 타입의 배열의 경우

Collections.reverseOrder()를 사용할 수가 없기 때문에

 

for 문을 돌려

Integer 타입의 배열로 바꿔준 뒤에

Arrays.sort(배열명, Collections.reverseOrder()); 

를 사용해서 역정렬을 해주면 된다

 

예제에 사용한 코드는 아래와 같다

 

package algorith;

import java.util.Arrays;
import java.util.Collections;

public class SortExample {

	public static void main(String[] args) {
		int arr[] = {50, 30, 11, 90, 128, 3}; // int 배열 생성 및 초기화
		Arrays.sort(arr); // 오름차순 정렬
		for(int i = 0; i<arr.length; i++) {
			System.out.print(arr[i] + " "); // 정렬 확인
		}
		
		Integer arr2[] = new Integer[arr.length]; // Integer 배열 생성 및 초기화
		for(int i = 0; i<arr.length; i++) {
			arr2[i] = arr[i]; // Integer 형태의 arr2에 arr 배열의 값 넣어주기
		}
		
		System.out.println(); // 한줄 내리기용
		
		// Integer 배열이 아닐 경우 아래처럼 sort 메소드 사용 불가
		Arrays.sort(arr2, Collections.reverseOrder()); // 내림차순 정렬
		for(int i = 0; i<arr.length; i++) {
			System.out.print(arr2[i] + " ");
		}

	}

}
반응형

댓글