List, Dictionary e HashSet em C#: Guia Prático de Coleções
📌 O que são Coleções?
Em C#, as coleções são estruturas que permitem armazenar, organizar e manipular conjuntos de dados de forma eficiente. Hoje vamos focar em três das mais usadas: List, Dictionary e HashSet.
1️⃣ List: Trabalhando com Listas Ordenadas
✅ O que é?
A List<T>
é uma lista dinâmica que pode crescer ou diminuir conforme necessário. Ideal para quando você precisa acessar elementos por índice.
Exemplo prático:
List<int> numeros = new List<int>();
numeros.Add(10);
numeros.Add(20);
numeros.Add(30);
int primeiro = numeros[0]; // Retorna 10
foreach (int numero in numeros)
{
Console.WriteLine(numero);
}
⭐ Vantagens:
- Permite duplicatas
- Preserva a ordem de inserção
- Acesso rápido por índice
⚠️ Desvantagens:
- Operações de busca podem ser lentas em listas grandes
2️⃣ Dictionary: Dados em Chave-Valor
✅ O que é?
O Dictionary<TKey, TValue>
armazena pares de chave e valor. Acesso super rápido pela chave!
Exemplo prático:
Dictionary<string, int> estoque = new Dictionary<string, int>();
estoque.Add("Maçã", 100);
estoque.Add("Banana", 50);
if (estoque.ContainsKey("Maçã"))
{
Console.WriteLine("Maçã está no estoque.");
}
foreach (var item in estoque)
{
Console.WriteLine($"Produto: {item.Key}, Quantidade: {item.Value}");
}
⭐ Vantagens:
- Altíssima performance para buscas
- Chaves únicas
⚠️ Desvantagens:
- Não permite chaves duplicadas
- Ordem dos itens não garantida
3️⃣ HashSet: Conjunto de Itens Únicos
✅ O que é?
O HashSet<T>
é uma coleção que só permite elementos únicos e não se preocupa com a ordem.
Exemplo prático:
HashSet<int> numerosUnicos = new HashSet<int>();
numerosUnicos.Add(1);
numerosUnicos.Add(2);
numerosUnicos.Add(1); // Ignorado, pois já existe
if (numerosUnicos.Contains(2))
{
Console.WriteLine("O número 2 está presente.");
}
foreach (int numero in numerosUnicos)
{
Console.WriteLine(numero);
}
⭐ Vantagens:
- Operações super rápidas
- Garante itens únicos
⚠️ Desvantagens:
- Não mantém a ordem dos itens
🔎 Resumo: Quando Usar Cada Uma?
- List: Quando você precisa de uma lista ordenada que pode ter itens repetidos.
- Dictionary: Quando precisa mapear chaves únicas para valores e quer rapidez na busca.
- HashSet: Quando precisa garantir que os itens não se repitam.
✅ Agora é a sua vez: pratique criando suas próprias coleções e testando os exemplos!
Comentários
Postar um comentário