w3resource

C#: Display the list according to the length then by name in ascending order

C# Sharp LINQ : Exercise-28 with Solution

Write a program in C# Sharp to display the list of items in the array according to the length of the string then by name in ascending order.

Sample Solution:

C# Sharp Code:

using System;
using System.Linq;
using System.Collections.Generic;

class LinqExercise28
{
    static void Main(string[] args)
    {
        // Array of cities
        string[] cities =  
        {  
            "ROME","LONDON","NAIROBI","CALIFORNIA","ZURICH","NEW DELHI","AMSTERDAM","ABU DHABI", "PARIS"  
        };  

        // Displaying the instruction for the operation
        Console.Write("\nLINQ : Display the list according to the length then by name in ascending order : "); 
        Console.Write("\n--------------------------------------------------------------------------------\n");	
        Console.Write("\nThe cities are : 'ROME','LONDON','NAIROBI','CALIFORNIA','ZURICH','NEW DELHI','AMSTERDAM','ABU DHABI','PARIS' \n");	
        Console.Write("\nHere is the arranged list :\n");

        // Ordering the cities first by length and then by name in ascending order using LINQ
        IEnumerable<string> cityOrder =
            cities.OrderBy(str => str.Length) // Order the cities by their lengths
                  .ThenBy(str => str);         // Then order them alphabetically if lengths are equal

        // Displaying the sorted cities
        foreach (string city in cityOrder)
        {
            Console.WriteLine(city);    
        }

        Console.ReadLine(); // Wait for user input before closing the console
    }
}

Sample Output:

LINQ : Display the list according to the length then by name in ascending order :                             
--------------------------------------------------------------------------------                              
The cities are : 'ROME','LONDON','NAIROBI','CALIFORNIA','ZURICH','NEW DELHI','AMSTERDAM','ABU DHABI','PARIS'  
                                                                                                       
Here is the arranged list :                                                                                   
ROME                                                                                                       
PARIS                                                                                                       
LONDON                                                                                                       
ZURICH                                                                                                       
NAIROBI                                                                                                       
ABU DHABI                                                                                                     
AMSTERDAM                                                                                                     
NEW DELHI                                                                                                     
CALIFORNIA

Visual Presentation:

C# Sharp LINQ: Display the list according to the length then by name in ascending order.

Flowchart:

Flowchart: LINQ : Display the list according to the length then by name in ascending order

C# Sharp Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a program in C# Sharp to generate a Right Outer Join between two data sets.
Next: Write a program in C# Sharp to split a collection of strings into some groups.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://www.w3resource.com/csharp-exercises/linq/csharp-linq-exercise-28.php