Listas em C#
Listas (List) são estruturas de dados homogêneas (dados do mesmo tipo) e ordenadas (elementos acessados por meio de posições). Neste post veja listas em C#.
Iniciam-se vazias e seus elementos são alocados sob demanda, ao contrário dos vetores.
Cada elemento das listas ocupam um “nó” (ou nodo).
Para utilizá-la é necessário usar a biblioteca “System.Collections.Generic” e declarar a lista desta forma:
using System.Collections.Generic;
...
//Instancia a lista
List<string> lista = new List<string>();
Para adicionar elementos na lista usamos add:
lista.add("conteúdo");
Para adicicionar elementos (ao final da lista), especificando a posição na lista, usamos Insert:
lista.Insert(3, "maçã"); //adiciona "maçã" na posição 3 da lista
Para mostrar o tamanho da lista, usamos Count:
lista.Count;
Para encontrar o primeiro ou o último elemento da lista que satisfaça uma condição específica, usamos Find e FindLast:
//Usamos uma expressão lambda (função anônima): o objeto x tal que x na posição 0 seja igual ao caractere 'A'
string x = lista.Find(x => x[0] == 'A') (primeiro caractere)
string x = lista.FindLast(x => x[0] == 'A')(último caractere)
Para encontrar a primeira ou a última posição de elemento da lista que satisfaça uma condição, usamos FindIndex e FindLastIndex:
string x = lista.FindIndex(x => x[0] == 'B') (primeira ocorrência)
string x = lista.FindLastIndex(x => x[0] == 'C')(última ocorrência)
Para filtrar uma lista com base em uma condição, usamos FindAll:
//encontre toda string x tal que o tamanho de x seja igual a 5
List<string> lista = new List.FindAll(x => x.Lenght == 5);
foreach(string obj in lista) {
Console.WriteLine(obj);
}
Para remover elementos da lista, usamos Remove, RemoveAll, RemoveAt e RemoveRange:
lista.Remove("maçã");//remove um item específico
lista.RemoveAll(x => x[0] == 'F');remove um item de acordo com uma condição
lista.RemoveAt(2);remove um item pela sua posição
lista.RemoveRange(3, 2);//remove items de uma faixa - apartir da posição 3, remover 2 elementos
CONHEÇA O CURSO COMPLETO DE C# COM + DE 100 AULAS PRÁTICAS. Tenha acesso vitalício e certificado de conclusão.
Link do curso: https://go.hotmart.com/L70031146H
Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits