IRONSOFTWAREHOME
ATUALIZAÇÕES DO DESENVOLVEDOR

C# For Each (Como funciona para desenvolvedores)

Curtis Chau
Curtis Chau
Updated: 21 de abril de 2026

Neste tutorial, abordaremos o loop "foreach" em C#, uma ferramenta essencial para desenvolvedores. O foreach loop simplifica o processo de iterar por uma coleção, tornando mais fácil realizar operações em cada item sem se preocupar com os detalhes subjacentes. Vamos discutir a importância do foreach, seus casos de uso e como implementá-lo no seu código C#.

Introdução ao foreach Loop

O foreach loop é uma ferramenta poderosa para desenvolvedores iterarem coleções de maneira concisa e legível. Isso simplifica o código e reduz as chances de erros, pois não há necessidade de gerenciar manualmente o índice ou a contagem dos itens da coleção. Em termos de legibilidade e simplicidade, o foreach loop é frequentemente preferido em relação ao tradicional for loop.

Os casos de uso para foreach incluem:

  • Somando os valores em uma coleção
  • Procurar um item em uma coleção
  • Modificando elementos em uma coleção
  • Executar ações em cada elemento de uma coleção

Entendendo Coleções

Existem diferentes tipos de coleções em C# que são usadas para armazenar um grupo de itens em um único objeto. Isso inclui matrizes, listas, dicionários e muito mais. O foreach loop é uma ferramenta útil que pode ser usada com qualquer coleção que implemente a interface IEnumerable ou IEnumerable<t>.

Alguns tipos comuns de coleções incluem:

  • Arrays: Uma coleção de elementos de tamanho fixo com o mesmo tipo de dados.
  • Listas: Uma coleção dinâmica de elementos com o mesmo tipo de dados.
  • Dicionários: Uma coleção de pares chave-valor, onde cada chave é única.

O namespace System.Collections.Generic contém vários tipos para trabalhar com coleções.

Implementing the foreach statement in C#

Agora que temos uma compreensão básica das coleções e do foreach loop, vamos mergulhar na sintaxe e ver como funciona em C#.

Sintaxe do foreach Loop

foreach (variableType variableName in collection)
{
    // Code to execute for each item
}

Aqui, variableType representa o tipo de dados dos itens na coleção, variableName é o nome dado ao item atual no loop (variável de loop) e collection refere-se à coleção que você deseja iterar.

Exemplo

Vamos considerar um exemplo em que temos uma lista de números inteiros e queremos encontrar a soma de todos os elementos da lista.

using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        // Create a list of integers
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };

        // Initialize a variable to store the sum
        int sum = 0;

        // Iterate through the list using foreach loop
        foreach (int number in numbers)
        {
            sum += number;
        }

        // Print the sum
        Console.WriteLine("The sum of the elements is: " + sum);
    }
}

Saída

Quando o loop é executado, ele produz a seguinte saída.

The sum of the elements is: 15
Text

No exemplo acima, primeiro criamos uma lista de inteiros chamada numbers e inicializamos uma variável sum para armazenar a soma dos elementos. Então, usamos o foreach loop para iterar na lista e adicionar o valor de cada elemento à soma. Por fim, imprimimos a soma no console. Este método também pode ser adaptado para impressão ou operação em outras coleções de maneira semelhante.

Variações e Melhores Práticas

Agora que temos uma compreensão básica de como usar o foreach loop, vamos discutir algumas variações e melhores práticas.

Iteração somente leitura: O foreach loop é mais adequado para iteração somente leitura, pois modificar a coleção durante a iteração pode levar a resultados inesperados ou erros de tempo de execução. Se você precisar modificar a coleção durante a iteração, considere usar um loop for tradicional ou criar uma nova coleção com as modificações desejadas.

Usando a palavra-chave var: Em vez de especificar explicitamente o tipo de dado dos elementos na coleção, você pode usar a palavra-chave var para deixar o compilador inferir o tipo de dado. Isso pode tornar o código mais conciso e mais fácil de manter.

Exemplo:

foreach (var number in numbers)
{
    Console.WriteLine(number);
}

Iteração através de dicionários: Ao usar um foreach loop para iterar através de dicionários, você precisará trabalhar com a estrutura KeyValuePair. Essa estrutura representa um par chave-valor em um dicionário.

Exemplo:

Dictionary<string, int> ageDictionary = new Dictionary<string, int>
{
    { "Alice", 30 },
    { "Bob", 25 },
    { "Charlie", 22 }
};

foreach (KeyValuePair<string, int> entry in ageDictionary)
{
    Console.WriteLine($"{entry.Key} is {entry.Value} years old.");
}

LINQ e foreach: LINQ (Language Integrated Query) é um recurso poderoso no C# que permite consultar e manipular dados de forma mais declarativa. Você pode usar LINQ com o foreach loop para criar código mais expressivo e eficiente.

Exemplo:

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

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };

        // Use LINQ to filter out even numbers
        var evenNumbers = numbers.Where(n => n % 2 == 0);

        // Iterate through the even numbers using foreach loop
        foreach (var number in evenNumbers)
        {
            Console.WriteLine(number);
        }
    }
}

Adicionando a funcionalidade do IronPDF ao tutorial C# foreach

Nesta seção, vamos expandir nosso tutorial sobre o loop "foreach" em C# apresentando o IronPDF, uma biblioteca popular para trabalhar com arquivos PDF em C#. Vamos demonstrar como usar o foreach loop em conjunto com o IronPDF para gerar um relatório PDF baseado em uma coleção de dados.

Introdução ao IronPDF

IronPDF é uma biblioteca poderosa para criar, editar e extrair conteúdo de arquivos PDF em C#. Ela oferece uma API fácil de usar para trabalhar com documentos PDF, tornando-se uma excelente opção para desenvolvedores que precisam incorporar a funcionalidade de PDF em seus aplicativos.

Algumas das principais funcionalidades do IronPDF incluem:

  • Geração de PDFs a partir de HTML, URLs e imagens
  • Edição de documentos PDF existentes
  • Extração de texto e imagens de PDFs
  • Adicionando anotações, campos de formulário e criptografia a PDFs

Instalando o IronPDF

Para começar a usar o IronPDF , você precisará instalar o pacote NuGet do IronPDF . Você pode fazer isso seguindo as instruções na documentação do IronPDF .

Gerando um Relatório PDF com IronPDF e foreach

Neste exemplo, usaremos a biblioteca IronPDF e o foreach loop para criar um relatório PDF de uma lista de produtos, incluindo seus nomes e preços.

Primeiro, vamos criar uma classe Product simples para representar os produtos:

public class Product
{
    public string Name { get; set; }
    public decimal Price { get; set; }

    public Product(string name, decimal price)
    {
        Name = name;
        Price = price;
    }
}

Em seguida, vamos criar uma lista de objetos Product para gerar o relatório PDF:

List<Product> products = new List<Product>
{
    new Product("Product A", 29.99m),
    new Product("Product B", 49.99m),
    new Product("Product C", 19.99m),
};

Agora, podemos usar o IronPDF e o foreach loop para gerar um relatório PDF contendo as informações dos produtos:

using System;
using System.Collections.Generic;
using IronPdf;

class Program
{
    static void Main()
    {
        // Create a list of products
        List<Product> products = new List<Product>
        {
            new Product("Product A", 29.99m),
            new Product("Product B", 49.99m),
            new Product("Product C", 19.99m),
        };

        // Initialize an HTML string to store the report content
        string htmlReport = "<table><tr><th>Product Name</th><th>Price</th></tr>";

        // Iterate through the list of products using foreach loop
        foreach (var product in products)
        {
            // Add product information to the HTML report
            htmlReport += $"<tr><td>{product.Name}</td><td>${product.Price}</td></tr>";
        }

        // Close the table tag in the HTML report
        htmlReport += "</table>";

        // Create a new instance of the HtmlToPdf class
        var htmlToPdf = new ChromePdfRenderer();

        // Generate the PDF from the HTML report
        var PDF = htmlToPdf.RenderHtmlAsPdf(htmlReport);

        // Save the PDF to a file
        PDF.SaveAs("ProductReport.PDF");

        // Inform the user that the PDF has been generated
        Console.WriteLine("ProductReport.PDF has been generated.");
    }
}

C# For Each (Como Funciona Para Desenvolvedores) Figura 1 - Resultado da Saída

Conclusão

Ao longo deste tutorial, exploramos os fundamentos do loop "foreach" em C#, sua importância, casos de uso e como implementá-lo em seu código. Também introduzimos o IronPDF, uma biblioteca poderosa para trabalhar com arquivos PDF em C#, e demonstramos como usar o foreach loop em conjunto com o IronPDF para gerar um relatório PDF baseado em uma coleção de dados.

Continue aprendendo e desenvolvendo suas habilidades, e logo você poderá aproveitar todo o potencial do foreach loop e outras características do C# para criar aplicações robustas e eficientes. O IronPDF oferece um período de teste gratuito para experimentar a biblioteca. Se você decidir comprá-lo, a licença do IronPDF começa a partir de $999.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.