C # - classe SortedList
A classe SortedList representa uma coleção de pares de chave e valor que são classificados pelas chaves e são acessíveis por chave e por índice.
Uma lista classificada é uma combinação de uma matriz e uma tabela hash. Ele contém uma lista de itens que podem ser acessados usando uma chave ou um índice. Se você acessa itens usando um índice, é um ArrayList, e se você acessa itens usando uma chave, é um Hashtable. A coleção de itens é sempre classificada pelo valor-chave.
Métodos e propriedades da classe SortedList
A tabela a seguir lista alguns dos comumente usados properties do SortedList classe -
Sr. Não. | Descrição da Propriedade |
---|---|
1 | Capacity Obtém ou define a capacidade da SortedList. |
2 | Count Obtém o número de elementos contidos na SortedList. |
3 | IsFixedSize Obtém um valor que indica se SortedList tem um tamanho fixo. |
4 | IsReadOnly Obtém um valor que indica se SortedList é somente leitura. |
5 | Item Obtém e define o valor associado a uma chave específica na SortedList. |
6 | Keys Obtém as chaves na SortedList. |
7 | Values Obtém os valores de SortedList. |
A tabela a seguir lista alguns dos comumente usados methods do SortedList classe -
Sr. Não. | Método e Descrição |
---|---|
1 | public virtual void Add(object key, object value); Adiciona um elemento com a chave e o valor especificados na SortedList. |
2 | public virtual void Clear(); Remove todos os elementos de SortedList. |
3 | public virtual bool ContainsKey(object key); Determina se a SortedList contém uma chave específica. |
4 | public virtual bool ContainsValue(object value); Determina se a SortedList contém um valor específico. |
5 | public virtual object GetByIndex(int index); Obtém o valor no índice especificado da SortedList. |
6 | public virtual object GetKey(int index); Obtém a chave no índice especificado da SortedList. |
7 | public virtual IList GetKeyList(); Obtém as chaves na SortedList. |
8 | public virtual IList GetValueList(); Obtém os valores de SortedList. |
9 | public virtual int IndexOfKey(object key); Retorna o índice baseado em zero da chave especificada em SortedList. |
10 | public virtual int IndexOfValue(object value); Retorna o índice baseado em zero da primeira ocorrência do valor especificado em SortedList. |
11 | public virtual void Remove(object key); Remove o elemento com a chave especificada de SortedList. |
12 | public virtual void RemoveAt(int index); Remove o elemento no índice especificado de SortedList. |
13 | public virtual void TrimToSize(); Define a capacidade para o número real de elementos em SortedList. |
Exemplo
O exemplo a seguir demonstra o conceito -
using System;
using System.Collections;
namespace CollectionsApplication {
class Program {
static void Main(string[] args) {
SortedList sl = new SortedList();
sl.Add("001", "Zara Ali");
sl.Add("002", "Abida Rehman");
sl.Add("003", "Joe Holzner");
sl.Add("004", "Mausam Benazir Nur");
sl.Add("005", "M. Amlan");
sl.Add("006", "M. Arif");
sl.Add("007", "Ritesh Saikia");
if (sl.ContainsValue("Nuha Ali")) {
Console.WriteLine("This student name is already in the list");
} else {
sl.Add("008", "Nuha Ali");
}
// get a collection of the keys.
ICollection key = sl.Keys;
foreach (string k in key) {
Console.WriteLine(k + ": " + sl[k]);
}
}
}
}
Quando o código acima é compilado e executado, ele produz o seguinte resultado -
001: Zara Ali
002: Abida Rehman
003: Joe Holzner
004: Mausam Banazir Nur
005: M. Amlan
006: M. Arif
007: Ritesh Saikia
008: Nuha Ali