SortedList
En un SortedList, los elementos están formados por una pareja: una clave y un valor. Se puede añadir elementos con “Add”, o acceder a los elementos mediante su índice numérico (con “GetKey”) o mediante su clave (sabiendo en qué posición se encuentra una clave con “IndexOfKey”).
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Collections; namespace EjemploSortedList { class Program { static void Main(string[] args) { SortedList miSortedList = new SortedList(); miSortedList.Add("Tierra","Earth"); miSortedList.Add("Sol","Sun"); miSortedList.Add("Moon","Luna"); // Mostramos los datos Console.WriteLine("Cantidad de palabras en la lista ordenada: {0}",miSortedList.Count); Console.WriteLine("Lista de palabras y su significado:"); for (int i = 0; i < miSortedList.Count; i++) { Console.WriteLine("{0} = {1}", miSortedList.GetKey(i), miSortedList.GetByIndex(i)); } Console.WriteLine("Traducción de \"Tierra\": {0}", miSortedList.GetByIndex(miSortedList.IndexOfKey("Tierra"))); Console.WriteLine("Que también se puede obtener con corchetes: {0}", miSortedList["Tierra"]); Console.ReadKey(); } } }
Otros métodos y propiedades de SortedList:
- “Contains“, para ver si la lista contiene una cierta clave.
- “ContainsValue“, para ver si la lista contiene un cierto valor.
- “Remove“, para eliminar un elemento a partir de su clave.
- “RemoveAt“, para eliminar un elemento a partir de su posición.
- “SetByIndex“, para cambiar el valor que hay en una cierta posición.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Collections; namespace EjemploSortedList { class Program { static void Main(string[] args) { SortedList miSortedList = new SortedList(); miSortedList.Add("Tierra", "Earth"); miSortedList.Add("Sol", "Sun"); miSortedList.Add("Luna", "Moon"); miSortedList.Add("Marte", "Marting"); // Esto daría error en TIEMPO DE EJECUCIÓN. //miSortedList.Add("Marte", "Martineison"); miSortedList.Add("Neptuno", "Neptuning"); // Mostramos los datos Console.WriteLine("Cantidad de palabras en la lista ordenada: {0}", miSortedList.Count); Console.WriteLine("Lista de palabras y su significado:"); for (int i = 0; i < miSortedList.Count; i++) { Console.WriteLine("{0} = {1}", miSortedList.GetKey(i), miSortedList.GetByIndex(i)); } Console.WriteLine("Traducción de \"Tierra\": {0}", miSortedList.GetByIndex(miSortedList.IndexOfKey("Tierra"))); Console.WriteLine("Que también se puede obtener con corchetes: {0}", miSortedList["Tierra"]); // Borrado de Marte miSortedList.Remove("Marte"); Console.WriteLine("Después de borrar Marte"); for (int i = 0; i < miSortedList.Count; i++) { Console.WriteLine("{0} = {1}", miSortedList.GetKey(i), miSortedList.GetByIndex(i)); } Console.ReadKey(); } } }