LINQ | Operador de elemento | elemento en

Los operadores de elementos se utilizan para devolver un elemento único o específico de la secuencia o colección. Por ejemplo, en una escuela cuando preguntamos, ¿quién es el director? Entonces habrá una sola persona que será el director de la escuela. Entonces el número de alumnos es una colección y el principal es el único resultado que sale de la colección.

El operador de consulta estándar de LINQ admite 8 tipos de operadores de elementos:

  1. elemento en
  2. ElementAtOrDefault
  3. Primero
  4. primero o predeterminado
  5. Ultimo
  6. último o predeterminado
  7. Único
  8. Único o predeterminado

Operador ElementAt

El operador ElementAt se usa para devolver un elemento del índice particular de la colección o secuencia dada. Aquí el índice especificado es un índice de base cero. Supongamos que una array contiene 3 elementos, es decir, 1, 2, 3 y queremos imprimir el valor en el índice 1, entonces usamos un método ElementAt porque devolverá el elemento presente en el índice 1, es decir, 2.

Puntos importantes:

  • No es compatible con la sintaxis de consulta en los lenguajes C# y VB.Net.
  • Admite la sintaxis del método en los lenguajes C# y VB.Net.
  • Está presente tanto en la clase Queryable como en la Enumerable.
  • Si el índice dado está fuera de rango, este método generará una excepción ArgumentOutOfRangeException .

Ejemplo 1:

// C# program to illustrate the
// use of ElementAt operator
using System;
using System.Linq;
  
class GFG {
  
    // Main Method
    static public void Main()
    {
  
        // Data source
        string[] sequence = {"Dog", "Cat", "Cow",
                               "Goat", "Parrot"};
  
        // Display the sequences
        Console.WriteLine("Sequence is: ");
  
        foreach(var s in sequence)
        {
            Console.WriteLine(s);
        }
  
        // Get element at index 3
        // Using ElementAt function
        var result = sequence.ElementAt(3);
  
        Console.WriteLine("Element is: {0}", result);
    }
}
Producción:

Sequence is: 
Dog
Cat
Cow
Goat
Parrot
Element is: Goat

Ejemplo 2:

// C# program to find the 
// ID of the employee
using System;
using System.Linq;
using System.Collections.Generic;
  
// Employee details
public class Employee {
  
    public int emp_id
    {
        get;
        set;
    }
  
    public string emp_name
    {
        get;
        set;
    }
  
    public string emp_gender
    {
        get;
        set;
    }
  
    public string emp_hire_date
    {
        get;
        set;
    }
  
    public int emp_salary
    {
        get;
        set;
    }
}
  
class GFG {
  
    // Main method
    static public void Main()
    {
        List<Employee> emp = new List<Employee>() {
              
            new Employee() {emp_id = 209, emp_name = "Anjita", emp_gender = "Female",
                                    emp_hire_date = "12/3/2017", emp_salary = 20000},
  
            new Employee() {emp_id = 210, emp_name = "Soniya", emp_gender = "Female",
                                    emp_hire_date = "22/4/2018", emp_salary = 30000},
  
            new Employee() {emp_id = 211, emp_name = "Rohit", emp_gender = "Male",
                                  emp_hire_date = "3/5/2016", emp_salary = 40000},
  
            new Employee() {emp_id = 212, emp_name = "Supriya", emp_gender = "Female",
                                      emp_hire_date = "4/8/2017", emp_salary = 40000},
  
            new Employee() {emp_id = 213, emp_name = "Anil", emp_gender = "Male",
                                emp_hire_date = "12/1/2016", emp_salary = 40000},
  
            new Employee() {emp_id = 214, emp_name = "Anju", emp_gender = "Female",
                                  emp_hire_date = "17/6/2015", emp_salary = 50000},
        };
  
        // Query to find the ID of 
        // the employee at index 1
        // Using ElementAt method
        var res = emp.Select(e => e.emp_id).ElementAt(1);
          
        Console.WriteLine("Employee ID: {0}", res);
    }
}
Producción:

Employee ID: 210

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *