На вопрос уже дан ответ. Я просто пытаюсь добавить более простую демонстрацию.
При использовании сравнения Comparator # два целых сравниваются следующим образом в результате функции сравнения.
* Result is negative -> first element is smaller
* Result is 0 -> they are same
* Result is positive -> first element is greater
Когда вы используете n1 - n2
:
* Result is negative -> n1 is smaller
* Result is 0 -> n1 and n2 are same
* Result is positive -> n1 is greater
Когда вы используете n2 - n1
:
* Result is negative -> n2 is smaller
* Result is 0 -> n1 and n2 are same
* Result is positive -> n2 is greater
Редактировать
Следующая таблица просто демонстрирует, что вычитание можно использоватьдля сравнения операций. Если операнды и результат не вписываются в тип данных, любая операция приведет к неверному результату.
