왜 a랑 aa를 정렬하면 a가 먼저 올까?

조예빈·2024년 7월 18일
0
post-custom-banner

문자열을 정렬 할 때, a와 aa가 있으면 a,aa 순으로 오름차순 정렬이 된다.

원래 가장 앞 글자부터 정렬하고, 그 다음 글자로 넘어가서 정렬한다. 하지만, 이 때, 기준이 궁금했다. a의 경우 a 다음은 Null값이기 때문에 먼저 오는것인지, 아니면 다른 기준이 있는지가 궁금하였다.

그래서 Arrays.sort 내부 함수에 들어가 보았다.

함수들을 보면 문자열을 길이를 기준으로 탐색하는 것을 알 수 있다. 즉, 문자열의 길이가 짧으면 탐색하는 로직이 먼저 끝나고, 먼저 반환되기 때문에 정렬 시 앞에 오는 것이다.

profile
컴퓨터가 이해하는 코드는 바보도 작성할 수 있다. 사람이 이해하도록 작성하는 프로그래머가 진정한 실력자다. -마틴 파울러

0개의 댓글