Любая ссылка, которая подтверждает, что Array.Sort(charArray, StringComparer.Ordinal) работает?

Я хотел бы отсортировать массив символов в соответствии с их порядковыми позициями (кодовые точки) в таблице Unicode.

Я вижу, что следующий код работает:

char[] charArray = new[] { 'h', 'e', 'l', 'l', 'o' };
Array.Sort(charArray, StringComparer.Ordinal);

Но это выглядит немного странно. Во-первых, потому что оба эти параметра не являются общими, а во-вторых, здесь я использую StringComparer для сравнения символов.

Это гарантированно сработает? Любая ссылка?

1 ответ

Решение

OrderBy(chr => chr) делает трюк. char является IComparable и это сопоставимое определение сравнивает целое /"порядковое" значение символов.

Другие вопросы по тегам