Ordering Elements of a List<String> by Length and Content

Here’s how to order the elements of a List<String> first by length and then by content

C#

static void Main(string[] args)
{
IEnumerable<string> newList = null;

List<string> strList = new List<string>()
{
"Jane", "Bandy", "Ram", "Fiddo", "Carol"
};

newList = strList.OrderBy(x => x.Length)
.ThenByDescending(x => x);

foreach (var str in newList)
Console.WriteLine(str);
Console.ReadLine();
}

VB.NET

Shared Sub Main(ByVal args() As String)
Dim newList As IEnumerable(Of String) = Nothing

Dim
strList As New List(Of String)() From _
{"Jane", "Bandy", "Ram", "Fiddo", "Carol"}

newList = strList.OrderBy(Function(x) x.Length)_
.ThenByDescending(Function(x) x)

For Each str In newList
Console.WriteLine(str)
Next str
Console.ReadLine()
End Sub

OUTPUT


image

You can also read Some Common Operations using List<string>






About The Author

Suprotim Agarwal
Suprotim Agarwal, Developer Technologies MVP (Microsoft Most Valuable Professional) is the founder and contributor for DevCurry, DotNetCurry and SQLServerCurry. He is the Chief Editor of a Developer Magazine called DNC Magazine. He has also authored two Books - 51 Recipes using jQuery with ASP.NET Controls. and The Absolutely Awesome jQuery CookBook.

Follow him on twitter @suprotimagarwal.

No comments: