TreeSet은 comparator 0을 같은 정렬 위치로 본다

equals가 false여도 비교 결과가 0이면 둘째 원소를 별도 값으로 저장하지 않습니다.

  1. 1

    원소 A

    score 90 · id 1

  2. 2

    원소 B

    score 90 · id 2

  3. 3

    compare

    score만 비교 → 0

  4. 4

    TreeSet

    B 추가 false · size 1

  5. 5

    tie-break

    thenComparing(id) → size 2

핵심: 중복을 잃지 않으려면 업무상 동률을 해소할 마지막 식별 key까지 comparator에 연결합니다.