У меня есть это List<string>
:
IList<string> ListaServizi = new List<string>();
Как заказать по алфавиту и по возрастанию?
У меня есть это List<string>
:
IList<string> ListaServizi = new List<string>();
Как заказать по алфавиту и по возрастанию?
Ответы:
ListaServizi = ListaServizi.OrderBy(q => q).ToList();
IList<string>
. Этот код действительно будет работать так, как написано, в отличие от ответов, которые получили больше голосов ListaServizi.Sort()
. Я не говорю, что это решение, которое я выберу, но на самом деле это был единственный правильный ответ, когда я опубликовал свой ответ.
.Sort
, то почему бы этого не сделать.
List
. И стоимость, связанная с этим ответом, нетривиальна и также ненужна. Он буквально ничего не получает . Это усложняет код, он менее лаконичен, менее эффективен, здесь буквально одни минусы.
Вы можете использовать сортировку
List<string> ListaServizi = new List<string>() { };
ListaServizi.Sort();
Можно предположить и другие ответы Sort
, но они, похоже, упустили тот факт, что место хранения набрано как IList<string
. Sort
не является частью интерфейса.
Если вы знаете, что ListaServizi
он всегда будет содержать List<string>
, вы можете либо изменить его объявленный тип, либо использовать приведение. Если вы не уверены, вы можете протестировать тип:
if (typeof(List<string>).IsAssignableFrom(ListaServizi.GetType()))
((List<string>)ListaServizi).Sort();
else
{
//... some other solution; there are a few to choose from.
}
Возможно, более идиоматично:
List<string> typeCheck = ListaServizi as List<string>;
if (typeCheck != null)
typeCheck.Sort();
else
{
//... some other solution; there are a few to choose from.
}
Если вы знаете, что ListaServizi
иногда это может быть другая реализация IList<string>
, оставьте комментарий, и я добавлю пару предложений по его сортировке.
.Sort
msdn.microsoft.com/en-us/library/b0zbh7b6%28v=vs.90%29.aspx ?