La propiedad SortedList.Item[Object] se usa para obtener y establecer el valor asociado con una clave específica en un objeto SortedList.
Sintaxis:
public virtual object this[object key] { get; set; }
Aquí, la clave está asociada con el valor a obtener o establecer. Es del tipo objeto.
Valor devuelto: esta propiedad devuelve el valor asociado con el parámetro clave en el objeto SortedList si se encuentra la clave; de lo contrario, devuelve un valor nulo.
Excepciones:
- ArgumentNullException: si la clave es nula.
- NotSupportedException: si la propiedad está establecida y el objeto SortedList es de solo lectura o si la propiedad está establecida, la clave no existe en la colección y SortedList tiene un tamaño fijo.
- OutOfMemoryException: si no hay suficiente memoria disponible para agregar el elemento a SortedList.
- InvalidOperationException: si el comparador arroja una excepción.
Los siguientes programas ilustran el uso de la propiedad discutida anteriormente:
Ejemplo 1:
// C# code to Gets or sets the value // associated with the specified key using System; using System.Collections; class GFG { // Driver code public static void Main() { // Creating a SortedList SortedList mylist = new SortedList(); // Adding elements in SortedList mylist.Add("g", "geeks"); mylist.Add("c", "c++"); mylist.Add("d", "data structures"); mylist.Add("q", "quiz"); // Get a collection of the keys. ICollection c = mylist.Keys; // Displaying the contents foreach(string str in c) Console.WriteLine(str + ": " + mylist[str]); // Setting the value associated with key "c" mylist["c"] = "C#"; Console.WriteLine("Updated Values:"); // Displaying the contents foreach(string str in c) Console.WriteLine(str + ": " + mylist[str]); } }
Producción:
c: c++ d: data structures g: geeks q: quiz Updated Values: c: C# d: data structures g: geeks q: quiz
Ejemplo 2:
// C# code to Gets or sets the value // associated with the specified key using System; using System.Collections; class GFG { // Driver code public static void Main() { // Creating a SortedList SortedList mylist = new SortedList(); // Adding elements in SortedList mylist.Add("4", "Even"); mylist.Add("9", "Odd"); mylist.Add("5", "Odd and Prime"); mylist.Add("2", "Even and Prime"); // Get a collection of the keys. ICollection c = mylist.Keys; // Displaying the contents foreach(string str in c) Console.WriteLine(str + ": " + mylist[str]); // Setting the value associated // with key "56" which is not present // will result in the creation of // new key and value will be set which // is given by the user mylist["56"] = "New Value"; Console.WriteLine("Updated Values:"); // Displaying the contents foreach(string str in c) Console.WriteLine(str + ": " + mylist[str]); // Setting the value associated // with key "28" which is not present // will result in the creation of // new key and its value can be null mylist["28"] = null; Console.WriteLine("Updated Values:"); // Displaying the contents foreach(string str in c) Console.WriteLine(str + ": " + mylist[str]); } }
Producción:
2: Even and Prime 4: Even 5: Odd and Prime 9: Odd Updated Values: 2: Even and Prime 4: Even 5: Odd and Prime 56: New Value 9: Odd Updated Values: 2: Even and Prime 28: 4: Even 5: Odd and Prime 56: New Value 9: Odd
Nota:
- Esta propiedad devuelve el valor asociado con la clave específica. Si no se encuentra esa clave, y uno está tratando de obtenerla, esta propiedad devolverá un valor nulo y, si se intenta establecer, dará como resultado la creación de un nuevo elemento con la clave especificada.
- Una clave no puede ser nula, pero un valor sí puede serlo. Para distinguir entre un valor nulo que se devuelve porque no se encuentra la clave especificada y un valor nulo que se devuelve porque el valor de la clave especificada es nulo, use el método contains o el método containskey para determinar si la clave existe en la lista.
- Recuperar el valor de esta propiedad es una operación O(log n), donde n es Count. Establecer la propiedad es una operación O(log n) si la clave ya está en SortedList. Si la clave no está en la lista, establecer la propiedad es una operación O(n) para datos no ordenados u O(log n) si el nuevo elemento se agrega al final de la lista. Si la inserción provoca un cambio de tamaño, la operación es O(n).
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