Funções C# - Como utilizar o foreach?
Diversas vezes nos deparamos com a necessidade de verificar o que cada caixa guarda ou o que pode estar armazenado em cada gaveta, e geralmente verificamos uma por uma, certo? E se eu disser que na manipulação de dados esse cenário também pode acontecer?
A utilização de funções é essencial para uma melhor performance no dia a dia de desenvolvimento, fazendo com que não precisemos escrever várias vezes um bloco de código que usaremos repetidamente, e o foreach é um desses recursos. Nesse artigo, vamos abordar de forma simples como funciona a instrução foreach.
O que é o foreach?
Com uma proposta semelhante ao 'for', o foreach no C# (e em linguagens como JavaScript, PHP, entre outros) é uma instrução em loop com o objetivo de percorrer cada elemento de um conjunto de dados, como array, listas, filas, etc., sendo seu ponto de parada o próprio tamanho do conjunto, sem a necessidade de definir um iterador de forma explícita.
A escrita do foreach é simples e direta. Abaixo está uma representação de como escrevê-lo:
//Exemplo:
foreach (tipo_variavel variavelTemporaria in conjunto)
//Exemplo na prática:
foreach (int num in numeros)
Sua estrutura consiste em (tipo_variavel variavelTemporaria in conjunto)
, onde o tipo pode ser qualquer tipo de variável correspondente aos dados que o conjunto está fornecendo. variavelTemporaria
é uma variável que armazenará o conteúdo temporariamente na posição equivalente ao loop. in
é a diretiva para o conjunto responsável e o conjunto
é o conjunto de dados.
No exemplo mais prático, utilizamos um array do tipo string que armazena nomes de cores:
string[] cores = {"Amarelo", "Roxo", "Verde", "Azul"};
foreach(string c in cores)
{
Console.WriteLine(c);
}
Saída do código mencionado anteriormente:
Amarelo
Roxo
Verde
Azul
Como funciona o foreach?
Como o próprio nome diz, 'for' significa 'por' e 'each' significa 'cada', traduzindo pelo literal, 'por cada', sem o uso de um iterador explícito, ao apontar para um dado e completar um loop, a variável temporária avança para o próximo dado, passando por cada item até finalizar o loop conforme o tamanho da coleção, ou se alguma instrução finalizá-lo antes, como por exemplo, o uso de um comando 'break' seguido de uma lógica.
Abaixo está uma representação gráfica de como o foreach funciona:
Essa representação é apenas uma forma simplificada de como o foreach se comporta por debaixo dos panos (ou dos códigos). O foreach tem várias outras necessidades, utilizando outros tipos de dados (como os IEnumerable<T> e Var), lógicas de interrupção do loop ou alguma condição específica.
Conclusão
Vimos, sem complicação, como o foreach funciona de forma prática. Essa função é utilizada de maneira muito simples e ajuda na manipulação de dados de forma eficaz.
Gostou do conteúdo e quer saber mais? Segue o link da documentação para uma leitura mais aprofundada sobre o assunto:
Documentação Foreach no C#: https://learn.microsoft.com/pt-br/dotnet/csharp/language-reference/statements/iteration-statements#the-foreach-statement
Documentação Foreach no C# (Em inglês): https://learn.microsoft.com/pt-br/dotnet/csharp/language-reference/language-specification/statements#1395-the-foreach-statement