int 배열 내림차순 정렬하기(reverseOrder)
-코딩 테스트 공부 중 int로 선언된 배열을 내림차순으로 정렬할 필요가 생겼다.
-처음에는 위처럼 Arrays의 내장함수 sort와 Collections의 내장함수 reverseOrder()를 활용해 정렬하려고 했지만, 타입이 맞지 않는다고 오류가 났다.
-검색을 통해 확인해보니, Arrays.sort안에 Collections.reverseOrder()를 인자로 받기 위해서는, int 배열이 아니라 Integer 배열이어야 한다는 것을 확인했다.
-왜냐하면 sort(T[] a, Comparator<? super T> c) method에서 T는 Generic Class이기 때문에 어떤 객체라도 인자로서 올 수 있지만, int는 객체가 아닌 Primitive type이기 때문이다. 따라서 객체인 Integer를 사용하면 정상적으로 작동한다.
https://tears-of-debugging.tistory.com/50
[java(자바)] int와 Integer의 차이 _디버깅의 눈물
int와 Integer의 차이 타입 method Null 선언 저장공간 리스트로서 사용 int Primitive 자료형 (원시적 자료형) 내장 method X 불가능 4 bytes X Integer Wrapper 클래스 내장 method O (ex. Integer.parseInt)..
tears-of-debugging.tistory.com
'java(자바)' 카테고리의 다른 글
[java(자바)] 2차원 배열 정렬하기 Comparator, 람다식 _디버깅의 눈물 (0) | 2022.10.20 |
---|---|
[java(자바)] treeSet 오름차순 정렬하기 Collections.reverseOrder() _디버깅의 눈물 (1) | 2022.10.05 |
[java(자바)] int와 Integer의 차이 _디버깅의 눈물 (0) | 2022.10.05 |
[java(자바)] map.getOrDefault _디버깅의 눈물 (1) | 2022.10.04 |
[java(자바)] List null 체크하기 isEmpty() 이용 _디버깅의 눈물 (0) | 2022.09.28 |