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 .
Características de la clase SortedList:
- 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.
Constructores
Constructor | Descripción |
---|---|
ListaOrdenada() | Inicializa una nueva instancia de la clase SortedList que está vacía, tiene la capacidad inicial predeterminada y se ordena según la interfaz IComparable implementada por cada clave agregada al objeto SortedList. |
ListaOrdenada(IComparer) | Inicializa una nueva instancia de la clase SortedList que está vacía, tiene la capacidad inicial predeterminada y se ordena según la interfaz IComparer especificada. |
ListaOrdenada(IComparer, Int32) | Inicializa una nueva instancia de la clase SortedList que está vacía, tiene la capacidad inicial especificada y se ordena según la interfaz IComparer especificada. |
ListaOrdenada(IDiccionario) | Inicializa una nueva instancia de la clase SortedList que contiene elementos copiados del diccionario especificado, tiene la misma capacidad inicial que el número de elementos copiados y se ordena según la interfaz IComparable implementada por cada clave. |
SortedList(IDictionary, IComparer) | Inicializa una nueva instancia de la clase SortedList que contiene elementos copiados del diccionario especificado, tiene la misma capacidad inicial que el número de elementos copiados y se ordena según la interfaz IComparer especificada. |
ListaOrdenada(Int32) | Inicializa una nueva instancia de la clase SortedList que está vacía, tiene la capacidad inicial especificada y se ordena según la interfaz IComparable implementada por cada clave agregada al objeto SortedList. |
Ejemplo:
// C# Program to create a SortedList using System; using System.Collections; class Geeks { // Main Method public static void Main(String[] args) { // Creating object of SortedList // fslist is the SortedList object SortedList fslist = new SortedList(); // Count property is used to get the // number of key/value pairs in fslist // It will give 0 as no pairs are present Console.WriteLine(fslist.Count); } }
Producción:
0
Propiedades
Propiedad | Descripción |
---|---|
Capacidad | Obtiene o establece la capacidad de un objeto SortedList. |
Contar | Obtiene el número de elementos contenidos en un objeto SortedList. |
EsTamañoFijo | Obtiene un valor que indica si un objeto SortedList tiene un tamaño fijo. |
es solo lectura | Obtiene un valor que indica si un objeto SortedList es de solo lectura. |
Está sincronizado | Obtiene un valor que indica si el acceso a un objeto SortedList está sincronizado (seguro para subprocesos). |
Artículo[Objeto] | Obtiene y establece el valor asociado a una clave específica en un objeto SortedList. |
Llaves | Obtiene las claves en un objeto SortedList. |
Valores | Obtiene los valores de un objeto SortedList. |
Ejemplo:
// C# Program to illustrate the // properties of SortedList Class 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("1", "one"); mySortedList.Add("2", "two"); mySortedList.Add("3", "three"); mySortedList.Add("4", "four"); mySortedList.Add("5", "five"); // Checking if a SortedList // object has a fixed size Console.WriteLine(mySortedList.IsFixedSize); // Checking if the created // SortedList is read-only or not Console.WriteLine(mySortedList.IsReadOnly); } }
Producción:
False False
Métodos
Método | Descripción |
---|---|
Añadir(Objeto, Objeto) | Agrega un elemento con la clave y el valor especificados a un objeto SortedList. |
Claro() | Elimina todos los elementos de un objeto SortedList. |
Clon() | Crea una copia superficial de un objeto SortedList. |
Contiene (Objeto) | Determina si un objeto SortedList contiene una clave específica. |
Contiene clave (objeto) | Determina si un objeto SortedList contiene una clave específica. |
ContieneValor(Objeto) | Determina si un objeto SortedList contiene un valor específico. |
Copiar a (array, Int32) | Copia los elementos SortedList en un objeto Array unidimensional, comenzando en el índice especificado en la array. |
Es igual a (Objeto) | Determina si el objeto especificado es igual al objeto actual. |
ObtenerPorÍndice(Int32) | Obtiene el valor en el índice especificado de un objeto SortedList. |
ObtenerEnumerador() | Devuelve un objeto IDictionaryEnumerator que itera a través de un objeto SortedList. |
Obtener código hash() | Sirve como la función hash predeterminada. |
ObtenerClave(Int32) | Obtiene la clave en el índice especificado de un objeto SortedList. |
ObtenerListaClave() | Obtiene las claves en un objeto SortedList. |
ObtenerTipo() | Obtiene el Tipo de la instancia actual. |
ObtenerListaDeValores() | Obtiene los valores de un objeto SortedList. |
IndexOfKey(Objeto) | Devuelve el índice de base cero de la clave especificada en un objeto SortedList. |
ÍndiceDeValor(Objeto) | Devuelve el índice de base cero de la primera aparición del valor especificado en un objeto SortedList. |
MemberwiseClone() | Crea una copia superficial del objeto actual. |
Eliminar (Objeto) | Elimina el elemento con la clave especificada de un objeto SortedList. |
Eliminar en (Int32) | Elimina el elemento en el índice especificado de un objeto SortedList. |
SetByIndex(Int32, Objeto) | Reemplaza el valor en un índice específico en un objeto SortedList. |
Sincronizado (Lista Ordenada) | Devuelve un contenedor sincronizado (seguro para subprocesos) para un objeto SortedList. |
Enstringr() | Devuelve una string que representa el objeto actual. |
RecortarAlTamaño() | Establece la capacidad en el número real de elementos en un objeto SortedList. |
Ejemplo 1:
// C# code to remove all // elements from a SortedList 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("1", "1st"); mySortedList.Add("2", "2nd"); mySortedList.Add("3", "3rd"); mySortedList.Add("4", "4th"); mySortedList.Add("5", "5th"); mySortedList.Add("6", "6th"); mySortedList.Add("7", "7th"); // Displaying number of elements Console.WriteLine("Number of elements in SortedList is : " + mySortedList.Count); // Displaying capacity Console.WriteLine("capacity of SortedList is : " + mySortedList.Capacity); // Removing all elements from SortedList mySortedList.Clear(); // Displaying number of elements Console.WriteLine("Number of elements in SortedList is : " + mySortedList.Count); // Displaying capacity Console.WriteLine("capacity of SortedList is : " + mySortedList.Capacity); } }
Producción:
Number of elements in SortedList is : 7 capacity of SortedList is : 16 Number of elements in SortedList is : 0 capacity of SortedList is : 16
Ejemplo 2:
// C# code to check if a SortedList // object contains a specific value 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("1", "1st"); mySortedList.Add("2", "2nd"); mySortedList.Add("3", "3rd"); mySortedList.Add("4", "4th"); // Checking if a SortedList object // contains a specific value Console.WriteLine(mySortedList.ContainsValue(null)); } }
Producción:
False
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