C# | Obtener el índice del valor especificado en un objeto SortedList

El método SortedList.IndexOfValue(Object) se utiliza para obtener el índice basado en cero de la primera aparición del valor especificado en un objeto SortedList.

Sintaxis:

public virtual int IndexOfValue (object value);

Aquí, el valor es el valor que se ubicará en el objeto SortedList. El valor puede ser nulo.

Valor devuelto: este método devuelve el índice basado en cero de la primera aparición del parámetro de valor , si el valor se encuentra en el objeto SortedList; de lo contrario, devuelve -1.

Los siguientes programas ilustran el uso del método mencionado anteriormente:

Ejemplo 1:

// C# code to get the zero-based index 
// of the first occurrence of the specified
// value in a SortedList object
using System;
using System.Collections;
  
class Geeks {
  
    // Main Method
    public static void Main(String[] args)
    {
  
        // Creating a SortedList of integers
        SortedList mylist = new SortedList();
  
        // Adding elements to SortedList
        mylist.Add("First", "Ram");
        mylist.Add("Second", "Rohit");
        mylist.Add("Third", "Mohit");
          
        //taking value "Rohit" twice
        // but it give the first occurrence
        mylist.Add("Fourth", "Rohit");
          
        mylist.Add("Fifth", "Manish");
  
  
        // printing the keys and values of mylist
        Console.WriteLine("Index \t\t Keys \t\tValues");
  
        for (int i = 0; i < mylist.Count; i++) 
        {
            Console.WriteLine("[{0}]\t\t{1}\t\t{2}", i,
                mylist.GetKey(i), mylist.GetByIndex(i));
        }
          
        Console.Write("\nThe index of value 'Rohit' is: "); 
          
        // getting the index of value "Rohit"
        Console.Write(mylist.IndexOfValue("Rohit"));
          
        // getting the index of value which is
        // not present in mylist so it will
        // return -1
        Console.Write("\nThe index of value 'Kirti' is: "); 
        Console.Write(mylist.IndexOfValue("Kirti"));
    }
}

Producción:

Index          Keys         Values
[0]        Fifth        Manish
[1]        First        Ram
[2]        Fourth        Rohit
[3]        Second        Shyam
[4]        Third        Mohit

The index of value 'Rohit' is: 2
The index of value 'Kirti' is: -1

Ejemplo 2:

// C# code to get the  zero-based index 
// of the first occurrence of the specified
// value in a SortedList object
using System;
using System.Collections;
  
class Geeks {
  
    // Main Method
    public static void Main(String[] args)
    {
  
        // Creating a SortedList of integers
        SortedList mylist = new SortedList();
  
        // Adding elements to SortedList
        mylist.Add("1", "C++");
        mylist.Add("2", "Java");
        mylist.Add("3", "DSA");
          
        // taking a value null
        mylist.Add("4", null);
          
        mylist.Add("5", "C#");
  
  
        // printing the keys and values of mylist
        Console.WriteLine("Index \t\t Keys \t\tValues");
  
        for (int i = 0; i < mylist.Count; i++) 
        {
            Console.WriteLine("[{0}]\t\t{1}\t\t{2}", i,
                mylist.GetKey(i), mylist.GetByIndex(i));
        }
          
        Console.Write("\nThe index of value 'null' is: "); 
          
        // getting the index of value "null"
        // it will give ArgumentNullException
        Console.Write(mylist.IndexOfValue(null));
    }
}

Producción:

Index          Keys         Values
[0]        1        C++
[1]        2        Java
[2]        3        DSA
[3]        4        
[4]        5        C#

The index of value 'null' is: 3

Nota:

  • La secuencia de índice se basa en la secuencia de clasificación. Cuando se agrega un elemento, se inserta en SortedList en el orden de clasificación correcto y la indexación se ajusta en consecuencia. Cuando se elimina un elemento, la indexación también se ajusta en consecuencia. Por lo tanto, el índice de un par clave/valor específico puede cambiar.
  • Los valores de los elementos de SortedList se comparan con el valor especificado mediante el método Equals.
  • Este método utiliza una búsqueda lineal; por lo tanto, este método es una operación O(n), donde n es Count.

Referencia:

Publicación traducida automáticamente

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