Minicursos - C#

Listas


As listas são uma ferramenta incrivelmente útil para armazenar dados diversos. Nós podemos pensar em uma lista como sendo um vetor capaz de armazenar quaisquer tipos de dados, mas com uma enorme vantagem: quando criamos um vetor, devemos informar o seu tamanho, mas nas listas isso não é necessário. Ela pode aumentar ou diminuir de tamanho automaticamente de acordo com a inserção ou remoção de conteúdo. Vamos começar com um exemplo bem simples de uma lista para armazenar números inteiros.

Listas - C#

Add

Agora vejam como é simples inserir valores nela. Colocarei a seguinte sequência de números, cada um em uma posição: 16, 5, 23, 19.

Listas - C#

Para fazer a utilização desses valores, o procedimento é semelhante. Vou exibir no Console o valor da segunda posição (sempre lembrando que começamos a contar a partir da posição zero).

Vou inserir o seguinte comando para a exibição dessa posição:

Console.WriteLine(minhaLista[2]);

Console.ReadLine();

Vejamos como será a saída:

Listas - C#

A posição 2 solicitada é a terceira inserida, portanto a que contém o valor 23.

Contando os itens de uma Lista

Existe um comando extremamente útil que nos retorna um número inteiro contendo a quantidade de itens em uma Lista. Trata-se do Count. Ele pode ser útil, por exemplo, dentro de um comando For, para que saibamos quando determinar a condição de parada. Vejam como ficaria na prática:

Listas - C#

A saída será:

Listas - C#

Conseguimos imprimir na tela todos os objetos contidos em minhaLista.

Removendo um item da Lista

Para remover um objeto presente em uma Lista é muito simples. Só precisamos substituir o comando Add pelo Remove e passar como parâmetro o item que desejamos excluir.

Listas - C#

A saída agora ficará:

Listas - C#

Notem que na segunda impressão da lista, após o espaço em branco, o número 5 não está mais presente, o que significa que a remoção aconteceu com sucesso.

Removendo itens de uma Lista através do índice

Outra forma de remover um item de uma Lista é através do seu índice. Isso é feito de maneira bastante semelhante ao processo exibido acima, mas no lugar de Remove usaremos o RemoveAt, passando como parâmetro o índice que desejamos remover.

Listas - C#

Vejamos a saída.

Listas - C#

Notem que na segunda exibição da Lista o número 16 não está mais presente.

Invertendo os itens de uma Lista

Outro comando interessante é o Reverse, que inverte totalmente uma lista. Vejam sua utilização abaixo:

Listas - C#

A execução agora terá a seguinte saída:

Listas - C#

Agora a ordem dos elementos está invertida.

Descobrindo a média aritmética dos itens de uma Lista numérica

Outro comando interessante das listas é o Average, que nos retorna a média aritmética dos elementos presentes. Vamos testá-lo.

Listas - C#

Agora vamos verificar a saída e a impressão da variável média:

Listas - C#

Aí está o cálculo correto realizado pela função.

Procurando itens em uma Lista

Até aqui vimos como inserir e remover objetos de uma Lista, invertê-la, calcular a média e, como próximo parâmetro, vamos ver como procurar um valor na lista, que é uma função de grande importância.

O comando responsável por isso é o Contains. Vejam como funciona:

Listas - C#

No exemplo acima pedi ao Contains que procure o elemento 5 dentro da Lista. Esse elemento existe, portanto devemos receber true como retorno. Vejamos se isso acontece:

Listas - C#

De fato a função retornou True, pois o elemento existe. Se não existisse receberíamos False como retorno.

Descobrindo a posição de um elemento em uma Lista

Além de saber se um elemento existe, pode ser importante saber em qual posição da Lista ele se encontra. Essa informação também é fácil de ser conseguida através do método IndexOf. Sua sintaxe é:

Listas - C#

Vejamos a execução:

Listas - C#

O programa retornou a posição 3, que é, de fato, o local em que o item 19 se encontra. Apenas para ilustrar, segue abaixo a execução de um código com um número inexistente na Lista:

Listas - C#

Ordenando itens de uma Lista

Outra opção que pode ser interessante é ordenar os itens de uma Lista, seja para exibi-los, gravar num banco, enfim, não importa. Seja lá qual for sua razão, se precisar ordenar os itens, deverá fazê-lo utilizando o método Sort. Segue abaixo um exemplo:

Listas - C#

Vejam a saída com a lista já ordenada:

Listas - C#

Aí está nossa Lista corretamente ordenada.

A última importante observação que faço é que dei todos os exemplos com números inteiros, mas poderíamos ter criado listas com outros tipos, por exemplo com números double:

Listas - C#

E como é possível perceber na imagem acima, o comando Sort também pode ser aplicado a esse tipo de dado sem qualquer problema. Abaixo temos a impressão da nossa lista do tipo double devidamente ordenada:

Listas - C#

Agora vamos criar uma lista do tipo String:

Listas - C#

Nossa lista agora será:

Listas - C#

Armazenando objetos em uma Lista

Como deu para perceber, as listas aceitam diversos tipos de itens. É possível, inclusive, criar uma classe qualquer e armazenar as instâncias dessa classe em uma lista. Criarei uma classe "Aluno" como exemplo:

Listas - C#

Agora adicionarei instâncias dessa classe em uma lista, da seguinte forma:

Listas - C#

Dessa forma teremos uma lista contendo objetos do tipo "Aluno".

Bem, estas foram, na minha opinião, as mais importantes funções relacionadas às Listas, mas existe muito mais! Basta dar uma olhada no IntelliSense do Visual Studio para perceber que se pode fazer praticamente de tudo com listas. Elas são realmente úteis!



Notícias - Games

The King of Fighters XV já tem data para chegar

A SNK finalmente definiu uma data para lançamento do tão esperando The King Of Fighters XV. Segundo comunicado recente, o game de luta deve chegar em 17 de fevereiro de 2022 para os consoles Playstation 4, Playstation 5, Xbox Series X e S, além de PCs. O título contará com 39 personagens e mante...

Ler Notícia Completa

Phil Spencer aprovou o Steam Deck rodando o xCloud

O chefe da divisão XBOX e vice presidente da divisão de jogos da Microsoft, Phil Spencer, recebeu um Steam Deck e passou uma semana testando o dispositivo da Valve. Nas palavras dele: “trata-se de um dispositivo muito legal. É interessante ter os jogos disponíveis em qualquer lu...

Ler Notícia Completa

Playstation 4 já vendeu mais de 116 milhões de unidades

Embora a nova geração de consoles já tenha chegado definitivamente, o PS4 ainda vem registrando bons números e ultrapassou a marca dos 116 milhões de aparelhos vendidos ao redor do mundo. Possivelmente a confirmação da Sony de que títulos bastante esperados, como o novo God Of War e Horizon Forb...

Ler Notícia Completa

Nintendo Switch supera Xbox 360 e PS3 em número de unidades vendidas

Em números divulgados nesta quinta-feira (05) a Nintendo confirmou a quantia de 89 milhões de unidades vendidas do seu console Switch, deixando para trás o Playstation 3, com 87 milhões de unidades e o Xbox 360, com 80 milhões. O próximo console na lista para ser ultrapassado é o Wii, também da...

Ler Notícia Completa

Far Cry 5 está de graça para todas as plataformas por tempo limitado

A Ubisoft liberou o game Far Cry 5 entre os dias 5 e 9 de agosto para todas as plataformas (PS4, PS5, Xbox One, Series X e Series S, Google Stadia e PC). A notícia é ótima, claro, mas ao contrário do que normalmente acontece, o jogo só poderá ser jogado gratuitamente até o dia 9 de agos...

Ler Notícia Completa

Tudo sobre o Luna, o novo serviço de streaming de jogos da Apple

Na última terça-feira a Amazon deu detalhes sobre seu serviço de streaming de jogos, o Luna. Trata-se de um serviço por assinatura, semelhante ao que faz o Netflix com filmes e séries. Com ele os jogos são trazidos para o seu dispositivo, seja uma TV, computador ou mesmo o iPhone, através da Int...

Ler Notícia Completa

The Last of Us Part II já é o maior lançamento do ano dentre todos os consoles

[sem spoilers] The Last of Us Part II agradou a muitos e desagradou a poucos, mas o fato é que a expectativa pelo lançamento do jogo era gigante! A primeira versão do jogo ganhou todos os prêmios possíveis e é considerada por quem o jogou como, no mínimo, um excelente título. Era inevitável, por...

Ler Notícia Completa

BGS 2020 é adiada devido ao coronavírus

A Brasil Game Show deste ano será adiada para os mesmos dias de 2021. Em comunicado oficial feito ontem, a organização do evento esclareceu as razões para o adiamento e comunicou que a 13ª edição da maior feira de games da América Latina acontecerá entre os dias 8 e 12...

Ler Notícia Completa

Organização cancela Anime Japan 2020 por causa do coronavírus

Em meio à epidemia do novo coronavírus (COVID-19), a organização do Anime Japan 2020 cancelou o evento, que aconteceria entre 21 e 24 de março, a fim de evitar a proliferação do vírus. A feira, que traz diversas novidades sobre animes, não será adiada. Além disso, o evento Family Anime Festa 20...

Ler Notícia Completa

EA é condenada por uso de imagem de jogadores

O Sindicato de Atletas Profissionais do Estado de São Paulo (SAPESP) publicou um comunicado nesta sexta (1º) relatando o parecer favorável da Justiça contra a Electronic Arts pelo uso indevido de imagem de mais de 1.500 jogadores profissionais nos jogos da franquia FIFA. A sentença da juíza Mar...

Ler Notícia Completa

Sony demonstra um pouco do poder do PS5. Confira!

A Sony não vai realizar a tradicional coletiva de imprensa E3 deste ano, mas a companhia vem revelando gradualmente partes de seu console PlayStation de próxima geração. O PlayStation 5 é dito que vai suportar gráficos de 8K, áudio 3D, armazenamento SSD e retrocompatibilidade com os títulos exis...

Ler Notícia Completa

Cuidado! Alguns jogos para celular podem ouvir o que crianças assistem na TV

Essa não é a primeira vez que apps que ouvem o que os usuários estão fazendo, conversando ou mesmo assistindo na TV são expostos. Mas, desta vez, parece que alguns games mobile para crianças estão monitorando através do microfone de smartphones o que seu público está consumindo na televisão. As...

Ler Notícia Completa

Desenvolvedores de games cancelam prêmio de fundador da Atari após acusações de assédio

Nolan Bushnell fala abertamente sobre reuniões que empresa realizava em banheiras e outros comportamentos inapropriados com mulheres. Ele 'aplaude' decisão. Os organizadores da Conferência dos Desenvolvedores de Games (GDC, na sigla original) anunciaram nesta quarta-feira (31) a decisão de cance...

Ler Notícia Completa

Mercado de games bate novo recorde e fatura US$ 36 bilhões em 2017

A indústria de games norte-americana alcançou um recorde considerável em 2017: considerando vendas de consoles, acessórios, softwares e microtransações, o faturamento bruto desse segmento da economia foi de US$ 36 bilhões. É o maior número da história e que representa um crescimento de 18% em...

Ler Notícia Completa

Conheça o novo controle do Atari

Para aquecer o coração dos fãs mais nostálgicos, a Atari publicou no Facebook a primeira foto do controle do seu novo videogame, o Ataribox, que é essencialmente uma versão modernizada do periférico do icônico Atari 2600. O controle mantém a mesma estética do modelo original, mas agora sem fio e...

Ler Notícia Completa

R$ 8,5 milhões: esse é o salário de Faker, a maior estrela do League of Legends

Lee “Faker” Sang-hyeok é a maior lenda entre os fãs de League of Legends. Tricampeão mundial pela equipe SK Telecom T1, o sul-coreano inspira respeito na comunidade e admiração nos oponentes. Com a vitória do jogador no Mundial de 2016 e o fim da temporada oficial da Riot Games neste ano, a orga...

Ler Notícia Completa

Boa notícia! Nintendinho clássico voltará a ser vendido em 2018

A Nintendo não esperava tanta procura pela versão em miniatura quando ele foi lançado no ano passado, e, para agradar quem não conseguiu comprar um, a empresa anunciou que relançará o NES Classic em 2018. Perto de lançar outro console em miniatura, o SNES Classic, a Nintendo quer acalmar um pou...

Ler Notícia Completa

Você sabia?

O personagem Mario surgiu pela primeira vez no mundo dos games em um jogo chamado Donkey Kong, lançado em 1981. Mario, que naquela época se chamava Jumpman, não era o personagem principal do jogo, mas ele se tornaria um dos mais famosos personagens do mundo dos games. Saiba mais.

O Playstation só nasceu porque uma parceria entre Sony e Nintendo, para desenvolver uma unidade de CD para o Super Nintendo, fracassou. Clique aqui e saiba mais.

O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.

O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.

Ajude o Contém Bits com um cafezinho!

Se você gostou do artigo, se ele lhe foi útil de alguma maneira e você quiser ajudar o Contém Bits, saiba que é simples, fácil e rápido. Basta clicar na imagem do PayPal (ou no cafezinho) e seguir as instruções, em ambiente seguro e com o respaldo do Paypal. Eu agradeço muito! :)


Você gostará destes vídeos!