Существует ли разница в порядке сравнения? - PullRequest
2 голосов
/ 07 февраля 2012

Что лучше использовать для:

String s=.....
...............//some calculation

final String const="abcd";

 s.compareTo(const)

или

const.compareTo(s)

Спасибо.

Ответы [ 3 ]

4 голосов
/ 07 февраля 2012

Я очень сомневаюсь, что это имеет значение с точки зрения производительности. Если есть вероятность, что s равен null, тогда предпочтите const.compareTo(s). (На самом деле, если s равно null, вы получите NullPointerException с compareTo() так или иначе.)

2 голосов
/ 07 февраля 2012

Результат будет обратным знаком для двух сравнений. Другими словами, если s.compareTo(const) == 1, то const.compareTo(s) == -1.

Кроме того, это то же самое. Как правило, лучше использовать const.compareTo(s) вместо альтернативы, так как это исключает потенциальное нулевое исключение.

1 голос
/ 07 февраля 2012

многие предпочитают использовать const.compareTo(s) , потому что он будет работать, если s null, но я считаю его менее читабельным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...