LINQ tudo

Resumo : neste tutorial, você aprenderá como usar o All()método LINQ para determinar se todos os elementos de uma sequência satisfazem uma condição especificada.

Introdução ao método LINQ All()

O All()é um método de extensão em LINQ que retorna truese todos os elementos de uma sequência satisfizerem uma condição especificada. Caso contrário, ele retorna false.

bool ALL<TSource> (
   this IEnumerable<TSource> source, 
   Func<TSource,bool> predicate
);Linguagem de código:  C#  ( cs )

Nesta sintaxe:

  • sourceé uma sequência de entrada com o tipo IEnumerable<T>.
  • predicateé uma função que retorna verdadeiro se o elemento satisfizer uma condição.

Exemplos de LINQ All()

Vejamos alguns exemplos de uso do All()método de extensão.

1) Usando o método LINQ All() para verificar se todos os elementos de uma sequência satisfazem uma condição

O exemplo a seguir demonstra como usar o All()método LINQ para verificar se todos os elementos de uma sequência satisfazem uma condição:

using static System.Console;

int[] numbers = { 2, 4, 6, 8 };

bool allEvenNumbers = numbers.All(n => n % 2 == 0 ? true : false);

if (allEvenNumbers)
{
    WriteLine("All numbers are even.");
}Linguagem de código:  C#  ( cs )

Neste exemplo, a expressão lambda n => n % 2 == 0 ? true : falsetesta todos os números na matriz de números e retorna verdadeiro se todos eles forem pares.

2) Usando o método LINQ All() com uma sequência de objetos

O programa a seguir demonstra como utilizar o All()método para verificar se todos os funcionários possuem salário superior a 40K:

using static System.Console;

namespace LINQDemo
{
    class Employee
    {
        public string? Name { get; set; }
        public string? Department { get; set; }
        public int Salary { get; set; }

    }
    class Program
    {
        public static void Main()
        {
            var employees = new List<Employee>() {
                new() { Name = "John", Department = "HR", Salary = 50000 },
                new() { Name = "Jane", Department = "IT", Salary = 60000 },
                new() { Name = "Bob",  Department = "HR", Salary = 45000 },
                new() { Name = "Sara", Department = "IT", Salary = 55000 },
                new() { Name = "Tom",  Department = "IT", Salary = 65000 }
            };

            var result = employees.All(e => e.Salary > 40000);
            if (result)
            {
                WriteLine("All employees have salary greater than 40000");
            }

        }
    }
}Linguagem de código:  C#  ( cs )

Saída:

All employees have salary greater than 40000Linguagem de código:  texto simples  ( texto simples )

Neste exemplo, a expressão lambda e => e.Salary > 40000se aplica a cada Employeeobjeto e retorna truese todos os funcionários tiverem salário maior que 40000.

Resumo

  • Use o método LINQ All()para determinar se todos os elementos em uma sequência satisfazem uma condição especificada.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *