Поиск объекта в коллекции по полю string - C#

Узнай цену своей работы

Формулировка задачи:

Так и звучит задание, но реализовать - никак. Создаю коллекцию ArrayList. Хочу искать объект через BinarySearch(), но для этого нужно сначала реализовать CompareTo интерфейса IComparable. Если я правильно понимаю, то аргументом в CompareTo можно передать только объект, а мне же нужно искать по строке. Тогда или я неправильно понимаю логику реализации CompareTo, или неправильно вообще искать с помощью BinarySearch(). В любом случае, пишу сюда от безысходности - много уж интернета перелопатил без толку для себя. Может, кто натолкнет на путь истинный с этим злополучным поиском?

Решение задачи: «Поиск объекта в коллекции по полю string»

textual
Листинг программы
static int compString( string a, string b )
{
    for ( int i = 0; i < Math.Min( a.Length, b.Length ); i++ )
    {
        if ( (int)a[i] < (int)b[i] )
            return 1;
        else if ( (int)a[i] > (int)b[i] )
            return -1;
    }
 
    if ( a.Length > b.Length ) return -1;
    else if ( a.Length < b.Length ) return 1;
    else return 0;
}

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

5   голосов , оценка 3.6 из 5
Похожие ответы