Ho una lista il cui tipo è stringa che voglio organizzare in ordine crescenteDisporre List <> in ordine crescente
listCustomFields = new List<String>() { "FirstName", "MiddleName", "Class" };
Ho una lista il cui tipo è stringa che voglio organizzare in ordine crescenteDisporre List <> in ordine crescente
listCustomFields = new List<String>() { "FirstName", "MiddleName", "Class" };
uso questo
listCustomFields.sort();
È possibile utilizzare LINQ metodo OrderBy
(genererà nuova List<string>
con elementi ordinati):
var ordered = listCustomField.OrderBy(x => x).ToList();
o List<T>.Sort
metodo (sarà ordinare l'elenco sul posto):
listCustomField.Sort();
penso che questa sia la risposta migliore perché avevo bisogno di farlo in ordine decrescente, e linq supporta questo – mmeasor
Puoi usare OrderBy
come;
Ordina gli elementi di una sequenza nell'ordine crescente .
listCustomFields = listCustomFields.OrderBy(n => n).ToList();
In alternativa, è possibile utilizzare anche List<T>.Sort
Method.
List<String> listCustomFields = new List<String>() { "FirstName", "MiddleName", "Class" };
listCustomFields = listCustomFields.OrderBy(n => n).ToList();
foreach (var item in listCustomFields)
{
Console.WriteLine(item);
}
Uscita sarà;
Class
FirstName
MiddleName
Qui uno DEMO.
Non hai bisogno di LINQ per questo: invece di creare una copia ordinata, è possibile ordinare l'elenco sul posto chiamando Sort()
metodo su di esso:
listCustomFields.Sort();
Il l'ordine è implicitamente in ascensione. Se è necessario cambiarlo, fornire un comparatore personalizzato.
Hey @MurtazaMunshi Non capisco perché si seleziona questa risposta. La risposta di Marcin è più veloce e scritta meglio. Se ci sono più di una risposta sembrano uguali, scegli la migliore e la migliore. –
Scusa se sono nuovo per lo stack overflow in questo caso non apprezzo le regole. Terrò le tue parole in mente. Grazie per avermi guidato. –