Dada una lista de objetos, necesitamos encontrar los números dobles enteros de la lista de objetos y ordenarlos usando LINQ. Entonces, esta tarea se puede realizar con el método OfType() y luego la clasificación de números se puede realizar con el método OrderBy(). Discutámoslos uno por uno junto con su sintaxis:
1. Método OfType(): Se utiliza para filtrar los elementos de un IEnumerable según el tipo especificado. Si la fuente dada es nula, este método generará ArgumentNullException.
Sintaxis:
public static System.Collections.Generic.IEnumerable<TResult> OfType<TResult>(esta fuente System.Collections.IEnumerable);
2. Método OrderBy() : este método se utiliza para clasificar los elementos de la colección en orden ascendente. Si la fuente proporcionada es nula, este método también genera ArgumentNullException.
Sintaxis:
public static System.Linq.IOrderedEnumerable<TSource> OrderBy<TSource,TKey(
thisSystem.Collections.Generic.IEnumerable<TSource> list, Func<TSource,TKey> Selector);
Ejemplo:
Input : ["sai", 100, "mohan", 18, 50, 200, "rajesh", 34] Output : [18, 34, 50, 100, 200] Input : ["raju", 345, 18.0 , "mohan", 189, 193, 30, 200, "rajesh"] Output : [30, 189, 193, 200, 345]
Acercarse:
- Cree una lista de objetos usando ArrayList.
- Ahora, usando el método OfType<int>() junto con el método OrderBy(), seleccionaremos los valores enteros de la lista y los ordenaremos y luego los convertiremos en una lista usando el método ToList().
List<int> result = objList.OfType<int>().OrderBy(num=>num).ToList();
- Imprima la lista usando el bucle foreach.
foreach (int integer in result) { Console.Write(integer + " "); }
C#
// C# program to find the integer numbers from // the list of objects and sort them. using System; using System.Linq; using System.Collections.Generic; class GFG{ static void Main(string[] args) { // Declaring and initializing an arrayList // of objects List<object> objList = new List<object>(){ "sai", 100, "mohan", 18.0, 50, 200, "rajesh", 34 }; // Selecting the integers form the list and sorting // them using orderby() List<int> result = objList.OfType<int>().OrderBy(num => num).ToList(); // Printing sorted list Console.WriteLine("The Sorted integers are : "); foreach (int integer in result) { Console.Write(integer + " "); } } }
The Sorted integers are : 34 50 100 200
Publicación traducida automáticamente
Artículo escrito por pulamolusaimohan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA