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.Add(Object, Object) se usa para agregar un elemento con la clave y el valor especificados a un objeto SortedList.
Propiedades de SortedList:
- Internamente, el objeto de SortedList mantiene las dos arrays. La primera array se usa para almacenar los elementos de la lista, es decir, las claves, y la segunda se usa para almacenar los valores asociados.
- Una clave no puede ser nula, pero el valor puede serlo.
- Como SortedList usó la clasificación, lo que lo hace más lento en comparación con Hashtable.
- La capacidad de una SortedList se puede aumentar dinámicamente mediante la reasignación.
- Las claves en SortedList no se pueden duplicar, pero los valores sí.
- SortedList se puede ordenar de acuerdo con las claves usando IComparer (ya sea en orden ascendente o descendente).
Sintaxis:
public virtual void Add (object key, object value);
Parámetros:
clave: Es la clave del elemento que se va a añadir.
valor: Es el valor del elemento que se va a sumar. El valor puede ser nulo.
Excepciones:
- ArgumentNullException: si la clave es nula.
- ArgumentException: si el elemento con la clave especificada ya existe en el objeto SortedList o SortedList está configurado para usar la interfaz IComparable y la clave no implementa la interfaz IComparable.
- NotSupportedException: si SortedList es de solo lectura o tiene un tamaño fijo.
- OutOfMemoryException: si no hay suficiente memoria disponible en el sistema para agregar los pares a SortedList.
- InvalidOperationException: si el comparador arroja una excepción.
Los siguientes programas ilustran el uso del método discutido anteriormente:
Ejemplo 1:
// C# program to illustrate how to add key/value // pair in SortedList using System; using System.Collections; class Geeks { // Main Method public static void Main(String[] args) { // Creating a sorted list of key/value pairs SortedList fslist = new SortedList(); // Adding pairs to fslist fslist.Add("Maths ", 98); fslist.Add("English ", 99); fslist.Add("Physics ", 97); fslist.Add("Chemistry", 96); fslist.Add("CSE ", 100); // Displays the marks in different // subjects sorted according to keys // i.e subjects // Here Count property is used to count // the total number of pairs in SortedList for (int i = 0; i < fslist.Count; i++) { Console.WriteLine("{0}:\t{1}", fslist.GetKey(i), fslist.GetByIndex(i)); } } }
Producción:
Chemistry: 96 CSE : 100 English : 99 Maths : 98 Physics : 97
Ejemplo 2:
// C# program to illustrate how to add // key/value pair in SortedList using System; using System.Collections; class Geeks { // Main Method public static void Main(String[] args) { // Creating a sorted list of key/value pairs SortedList fslist = new SortedList(); // Adding pairs to fslist fslist.Add("Maths ", 98); fslist.Add("English ", 99); fslist.Add("Physics ", 97); fslist.Add("Chemistry", 96); // this will give error as we are // adding duplicate key i.e Chemistry fslist.Add("Chemistry", 100); } }
Error:
Excepción no controlada:
System.ArgumentException: el elemento ya se ha agregado. Clave en el diccionario: ‘Química’ Clave agregada: ‘Química’
en System.Collections.SortedList.Add (System.Object key, System.Object value) en :0
en Geeks.Main (System.String[] args) en: 0
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