C# | Buscar en un objeto SortedList

La clase SortedList es una colección de pares (clave, valor) que se ordenan según las claves. Se puede acceder a esos pares por clave y también por índice (indexación basada en cero). Esto viene bajo el espacio de nombres System.Collections . El método SortedList.ContainsKey(Object) se usa para verificar si un objeto SortedList contiene una clave específica o no.

Propiedades:

  • Se puede acceder a un elemento SortedList por su clave o por su índice.
  • Un objeto SortedList mantiene internamente dos arrays para almacenar los elementos de la lista, es decir, una array para las claves y otra array para los valores asociados.
  • Una clave no puede ser nula, pero un valor sí puede serlo.
  • La capacidad de un objeto SortedList es la cantidad de elementos que SortedList puede contener.
  • Una SortedList no permite claves duplicadas.
  • Las operaciones en un objeto SortedList tienden a ser más lentas que las operaciones en un objeto Hashtable debido a la ordenación.
  • Se puede acceder a los elementos de esta colección mediante un índice entero. Los índices de esta colección están basados ​​en cero.

Sintaxis:

public virtual bool ContainsKey (object key);

Aquí, key es la clave para ubicar en el objeto SortedList.

Valor devuelto: este método devolverá True si el objeto SortedList contiene un elemento con la clave especificada; de lo contrario, devolverá False .

Excepciones:

  • ArgumentNullException: si la clave es nula.
  • InvalidOperationException: si el comparador arroja una excepción.

A continuación se dan algunos ejemplos para entender la implementación de una mejor manera:

Ejemplo 1:

// C# code to check if a SortedList
// object contains a specific key
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating an SortedList
        SortedList mySortedList = new SortedList();
  
        // Adding elements to SortedList
        mySortedList.Add("h", "Hello");
        mySortedList.Add("g", "Geeks");
        mySortedList.Add("f", "For");
        mySortedList.Add("n", "Noida");
  
        // Checking if a SortedList object
        // contains a specific key
        Console.WriteLine(mySortedList.ContainsKey("g"));
    }
}
Producción:

True

Ejemplo 2:

// C# code to check if a SortedList
// object contains a specific key
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating an SortedList
        SortedList mySortedList = new SortedList();
  
        // Adding elements to SortedList
        mySortedList.Add("h", "Hello");
        mySortedList.Add("g", "Geeks");
        mySortedList.Add("f", "For");
        mySortedList.Add("n", "Noida");
  
        // Checking if a SortedList object
        // contains a specific key
        // It should throw ArgumentNullException
        // as the Key can not be null
        Console.WriteLine(mySortedList.ContainsKey(null));
    }
}

Error:

Excepción no controlada:
System.ArgumentNullException: la clave no puede ser nula.
Nombre del parámetro: clave

Nota: Este método utiliza un algoritmo de búsqueda binaria, por lo tanto, este método es una operación O(log n), donde n es Count.

Referencia:

Publicación traducida automáticamente

Artículo escrito por Sahil_Bansall 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 *