loading

프로그래밍/JAVA

[JAVA] The method sort(int[]) in the type Arrays is not applicable for the arguments (int[], Collections.reverseOrder())

침착곰 2021. 5. 3. 15:04
반응형

안녕하세요

자바(JAVA) 배열 함수를 사용하는 중에 밑에와 같은 에러가 생긴 원인과 해결방법에 대해서 알아보겠습니다

The method sort(int[]) in the type Arrays is not applicable for the arguments (int[], Collections.reverseOrder())


 

에러 원인

자바 배열함수를 사용하는 중에 int[] 배열의 내림차순을 하다보면 위와 같은 에러가 나타납니다

int[]에서는 Collections메소드를 사용하지 못 한다는 뜻 입니다

Collections는 객체에서만 사용이 가능한 메소드입니다

int[]는 객체가 아닌 Primary type이므로 사용이 불가능한 것입니다

 


해결 방법

해결 방법으로는 int[]를 사용하는 것이 아닌 Integer[]로 배열 변수를 선언하면 에러없이 해결할 수 있습니다

밑의 소스를 참고바랍니다

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

public class Sort {
	public static void main(String[] args)  {	
		Integer[] array = {49, 35, 71, 13, 9, 99};
		
		Arrays.sort(array, Collections.reverseOrder());
		
		for(int i = 0; i < array.length; i++)
		{
			System.out.print("[" + array[i] + "] ");
		}
	}
}

 

결과 화면

 

여기까지 The method sort(int[]) in the type Arrays is not applicable for the arguments (int[], Collections.reverseOrder())

에러의 원인과 해결방법에 대해서 알아봤습니다

자바 프로그래밍을 하는 개발자 분들에게 이 글이 도움이 되었으면 좋겠습니다!

반응형
그리드형