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