Как работает String.CompareTo? - PullRequest
       5

Как работает String.CompareTo?

2 голосов
/ 31 августа 2009

Когда я сравниваю строки, содержащие положительные / отрицательные числа, например:

int res1 = "-1".CompareTo("1");
int res2 = "-1".CompareTo("2");

res1 равно 1.
res2 равно -1.

Как работает String.CompareTo ?? Это означало бы, что это заказ "2 -1 1" ...

1 Ответ

8 голосов
/ 31 августа 2009

С MSDN :

Некоторые не буквенно-цифровые символы может иметь специальные веса, назначенные их. Например, дефис ("-") может иметь очень маленький вес назначено так, чтобы "курятник" и «кооператив» появляются рядом друг с другом в отсортированный список.

Редактировать: Забыл упомянуть, это связано с перечислением CompareOptions, используемым string.Compare.

...