Сортировка списка с учетом регистра .Sort(); - C#

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

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

Как отсортировать список List<>, чтобы сначала шли строки начинающиеся с заглавной буквы, а потом со строчной? Изначально Petya fedya Ivan lines.Sort(); выдает fedya Ivan Petya А нужно Ivan Petya fedya

Решение задачи: «Сортировка списка с учетом регистра .Sort();»

textual
Листинг программы
using System;
using System.Collections.Generic;
namespace ns
{
    class Program
    {
        static int Comparer(string s1, string s2)
        {
            if (char.IsUpper(s1[0]) && char.IsLower(s2[0])) return -1;
            if (char.IsUpper(s2[0]) && char.IsLower(s1[0])) return 1;
            return string.Compare(s1, s2, false);
        }
        static void Main(string[] args)
        {
            List<string> list = new List<string> { "Zina", "Petya", "fedya", "Ivan", "anna" };
            list.Sort(Comparer);
            foreach (string word in list)
                Console.WriteLine(word);
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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