Оптимальным способом проверьте равенство регистронезависимых значений IEnumerable.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Оптимальным способом проверьте равенство регистронезависимых значений IEnumerable.

Сообщение Anonymous »

Я пытаюсь написать свою собственную версию строки, но пока не понимаю, как проверять равенство таких строк (унаследованных от IEnumerable) без учета регистра.Конечно, этот код:

Код: Выделить всё

if (_size != other._size)
return false;
for (var i = 0; i < _size && i < other._size; i++)
if (char.ToUpper(this[i]) != char.ToUpper(other[i]))
return false;
return true;
не оптимально. (Переменная _size означает длину, но является частной переменной, которую можно изменить внутри класса.) Этот код вызывает char.ToUpper() два раза, тогда как мне просто нужно сравнить эти символы. Какой способ лучше?
Примечание: проверка должна работать для всех систем письма, таких как латиница, кириллица, арабская и т. д.

Подробнее здесь: https://stackoverflow.com/questions/788 ... ptimal-way
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»