Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

Hashtable em C# Explicado: Armazenamento Chave-Valor, Operações e Exemplos Práticos

O que é um Hashtable em C#?

Um Hashtable é uma collection não-genérica que armazena dados como pares chave-valor. Diferente de arrays ou listas que mantêm um único valor por índice, uma hashtable permite recuperar um valor diretamente usando sua chave única, fornecendo lookup O(1) em tempo médio.

Entradas típicas parecem com isto:

{ "001", ".Net" }
{ "002", "C#" }
{ "003", "ASP.Net" }

Aqui, as chaves são "001", "002" e "003", e os valores correspondentes são ".Net", "C#" e "ASP.Net".

Abaixo, mergulhamos nas operações mais comuns que você usará com Hashtable.

Declarando um Hashtable

Instancie um hashtable usando o tipo Hashtable e a palavra-chave new:

Hashtable ht = new Hashtable();

Adicionando Elementos

Use o método Add para inserir um par chave-valor. Tanto a chave quanto o valor devem ser fornecidos:

ht.Add("001", ".Net");
ht.Add("002", "C#");
ht.Add("003", "ASP.Net");

Exemplo 1 – Exibindo Todos os Valores

A seguinte aplicação console demonstra criação de hashtable, população e impressão de cada valor:

Hashtable em C# Explicado: Armazenamento Chave-Valor, Operações e Exemplos Práticos

using System;
using System.Collections;
namespace DemoApplication {
    class Program {
        static void Main(string[] args) {
            Hashtable ht = new Hashtable();
            ht.Add("001", ".Net");
            ht.Add("002", "C#");
            ht.Add("003", "ASP.Net");
            ICollection keys = ht.Keys;
            foreach (String k in keys) {
                Console.WriteLine(ht[k]);
            }
            Console.ReadKey();
        }
    }
}

Explicação

  1. Declarar a variável Hashtable ht.
  2. Adicionar pares chave-valor usando Add.
  3. Recuperar a coleção de chaves via ht.Keys (retorna um ICollection).
  4. Iterar sobre as chaves e exibir o valor associado com ht[key].

Executar o programa produz:

Hashtable em C# Explicado: Armazenamento Chave-Valor, Operações e Exemplos Práticos

Métodos Comuns

ContainsKey

Verifica se uma chave específica existe:

ht.ContainsKey("001"); // retorna true se chave presente

ContainsValue

Verifica se um valor particular está armazenado no hashtable:

ht.ContainsValue("C#"); // retorna true se valor encontrado

Exemplo 2 – Usando ContainsKey & ContainsValue

Abaixo está um programa conciso que demonstra ambos os métodos:

Hashtable em C# Explicado: Armazenamento Chave-Valor, Operações e Exemplos Práticos

using System;
using System.Collections;
namespace DemoApplication {
    class Program {
        static void Main(string[] args) {
            Hashtable ht = new Hashtable();
            ht.Add("001", ".Net");
            ht.Add("002", "C#");
            ht.Add("003", "ASP.Net");
            Console.WriteLine(ht.ContainsKey("001")); // true
            Console.WriteLine(ht.ContainsValue("C#")); // true
            Console.ReadKey();
        }
    }
}

Explicação

  1. Usando ContainsKey confirma a presença de "001".
  2. Usando ContainsValue confirma que "C#" está armazenado.

O console exibe:

Hashtable em C# Explicado: Armazenamento Chave-Valor, Operações e Exemplos Práticos

Principais Conclusões

Um Hashtable armazena elementos como pares chave-valor, permitindo lookup rápido quando você conhece a chave. Embora Dictionary<TKey, TValue> genérico seja recomendado para type safety em C# moderno, entender Hashtable permanece valioso para código legado e cenários de interoperabilidade.

Linguagem C

  1. Expressões, Instruções e Blocos em C#: Guia Completo com Exemplos Práticos
  2. Laço do-while em C++: Sintaxe, Exemplos Práticos e Loops Aninhados
  3. Dominando Ponteiros em C++: Conceitos, Exemplos e Aplicações Práticas
  4. Dominando o Tipo Char em C++: Declaração, ASCII e Técnicas de Conversão
  5. Sobrecarga de Operadores em C++: Guia Prático com Exemplos de Código
  6. Funções em C++ Explicadas com Exemplos Práticos de Código
  7. Dominando Collections em C#: Tutorial Prático com Exemplos do Mundo Real
  8. Domine o str.count() do Python: Como Contar Caracteres e Substrings com Exemplos
  9. Função round() em Python Explicada com Exemplos Práticos
  10. Dominando a Função map() do Python: Sintaxe, Exemplos e Boas Práticas