[자바] 함수 정렬시 compareTo 함수 쓰는 이유(써야하는 이유)
Arrays.sort(intervals, (i1, i2) -> i1[0]-i2[0]); 저는 정렬할 때 보통 람다식을 사용하여 위와 같이 Comparator를 구현합니다. compareTo함수를 써도 되는 것은 알고 있지만 그냥 -를 사용하는게 더 짧아서 이걸 쓰는 게 습관이 됐습니다. 그런데 오늘 친구가 왜 compareTo를 써야하는지 아냐고 물어봤는데 대답하지 못했습니다. 그 친구가 알려주길 -로 비교를 하는 경우 Integer.MIN_VALUE 값과 1의 값을 비교하면 overflow(underflow) 문제가 생깁니다. Integer.MIN_VALUE - 1 을 하게되면 Integer.MAX_VALUE가 되어서 잘못된 결과가 나옵니다. 그래서 Integer 클래스의 경우 compareTo를 어떻..