Publicado em

Listas em C#

Partilhar:

Introdução

O C# é uma linguagem poderosa e flexível. Entre suas muitas funcionalidades, as listas são particularmente notáveis. São coleções dinâmicas que nos permitem armazenar, modificar e acessar elementos de forma eficiente.

Diferença entre Listas e Arrays

Enquanto os arrays são estruturas de dados com tamanho fixo, as listas são dinâmicas. Isto significa que podem crescer e encolher à medida que adicionamos ou removemos elementos. Este comportamento torna as listas adequadas para cenários onde o número exato de elementos é desconhecido à priori.

Características das Listas

  • Ordenadas: A ordem dos elementos é mantida na lista, a menos que especificamente rearranjada.
  • Tipadas: As listas em C# são fortemente tipadas, garantindo que todos os elementos sejam do mesmo tipo.
  • Dinâmicas: Seu tamanho pode mudar dinamicamente, adequando-se ao número de elementos.

Métodos Comuns das Listas

As listas em C# oferecem uma variedade de métodos úteis:

  • Add: Adiciona um elemento ao final da lista.
  • Remove: Remove o primeiro ocorrência de um elemento específico.
  • Sort: Ordena a lista.
  • Reverse: Inverte a ordem dos elementos.
  • Find: Procura um elemento que atenda a um determinado critério.

Listas vs. Outras Coleções

Existem outras coleções em C# além das listas, como Dictionary, HashSet, e Queue. Cada uma tem suas próprias características e casos de uso ideais. Por exemplo, Dictionary é excelente para armazenar pares chave-valor, enquanto HashSet é útil para garantir a unicidade de elementos.

Considerações de Desempenho

Embora as listas sejam eficientes na maioria dos casos, é crucial estar ciente de suas implicações de desempenho. Por exemplo, adicionar elementos no meio de uma lista pode ser mais demorado do que adicioná-los no final, devido ao deslocamento de elementos.

Explorando o Código

using System;
using System.Collections.Generic;
using System.Linq;

namespace Base {
  class Listas {
    public void Run() {
      List<string> cores = new List<string>();

      cores.Add("Azul");
      cores.Add("Verde");
      cores.Add("Amarelo");
      cores.Add("Vermelho");
      cores.Add("Laranja");

      cores.Remove("Laranja");
      cores.Reverse();
      cores.Sort();

      Console.WriteLine($"Número de cores: {cores.Count}");
      Console.WriteLine($"Primeira cor: {cores.First()}");
      Console.WriteLine($"Última cor: {cores.Last()}");
    }
  }
}

Este exemplo demonstra a criação e manipulação básica de uma lista. Aqui, manipulamos uma lista de cores, demonstrando a adição, remoção, inversão e ordenação de elementos.

Conclusão

As listas são ferramentas incrivelmente versáteis em C#. Seja você um iniciante ou um desenvolvedor experiente, a compreensão profunda de como as listas funcionam o ajudará em muitos cenários de programação.

Happy coding!