Lire en anglais

Partager via


Enumerable.Any Méthode

Définition

Détermine si les éléments d'une séquence existent ou satisfont à une condition.

Surcharges

Any<TSource>(IEnumerable<TSource>)

Détermine si une séquence contient des éléments.

Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Détermine si des éléments d'une séquence satisfont à une condition.

Any<TSource>(IEnumerable<TSource>)

Source:
AnyAll.cs
Source:
AnyAll.cs
Source:
AnyAll.cs

Détermine si une séquence contient des éléments.

C#
public static bool Any<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

IEnumerable<T> à vérifier pour savoir si des éléments y sont présents.

Retours

true si la séquence source contient des éléments ; sinon, false.

Exceptions

source a la valeur null.

Exemples

L’exemple de code suivant montre comment utiliser Any pour déterminer si une séquence contient des éléments.

C#
List<int> numbers = new List<int> { 1, 2 };
bool hasElements = numbers.Any();

Console.WriteLine("The list {0} empty.",
    hasElements ? "is not" : "is");

// This code produces the following output:
//
// The list is not empty.

La valeur booléenne retournée par la Any<TSource>(IEnumerable<TSource>) méthode est généralement utilisée dans le prédicat d’une where clause (Where clause en Visual Basic) ou dans un appel direct à la Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) méthode . L’exemple suivant illustre cette utilisation de la Any méthode .

C#
class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}
class Person
{
    public string LastName { get; set; }
    public Pet[] Pets { get; set; }
}

public static void AnyEx2()
{
    List<Person> people = new List<Person>
        { new Person { LastName = "Haas",
                       Pets = new Pet[] { new Pet { Name="Barley", Age=10 },
                                          new Pet { Name="Boots", Age=14 },
                                          new Pet { Name="Whiskers", Age=6 }}},
          new Person { LastName = "Fakhouri",
                       Pets = new Pet[] { new Pet { Name = "Snowball", Age = 1}}},
          new Person { LastName = "Antebi",
                       Pets = new Pet[] { }},
          new Person { LastName = "Philips",
                       Pets = new Pet[] { new Pet { Name = "Sweetie", Age = 2},
                                          new Pet { Name = "Rover", Age = 13}} }
        };

    // Determine which people have a non-empty Pet array.
    IEnumerable<string> names = from person in people
                                where person.Pets.Any()
                                select person.LastName;

    foreach (string name in names)
    {
        Console.WriteLine(name);
    }

    /* This code produces the following output:

       Haas
       Fakhouri
       Philips
    */
}

Remarques

Note

Cette méthode ne retourne aucun élément d’une collection. Au lieu de cela, elle détermine si la collection contient des éléments.

L’énumération de source est arrêtée dès que le résultat peut être déterminé.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Any() clause se traduit par un appel de Any.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Any<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>)

Source:
AnyAll.cs
Source:
AnyAll.cs
Source:
AnyAll.cs

Détermine si des éléments d'une séquence satisfont à une condition.

C#
public static bool Any<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,bool> predicate);

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

IEnumerable<T> qui contient les éléments auxquels appliquer le prédicat.

predicate
Func<TSource,Boolean>

Fonction permettant de tester chaque élément par rapport à une condition.

Retours

true si la séquence source n’est pas vide et au moins un de ses éléments réussit le test dans le prédicat spécifié ; sinon, false.

Exceptions

source ou predicate est null.

Exemples

L’exemple de code suivant montre comment utiliser Any pour déterminer si un élément d’une séquence remplit une condition.

C#
class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
    public bool Vaccinated { get; set; }
}

public static void AnyEx3()
{
    // Create an array of Pets.
    Pet[] pets =
        { new Pet { Name="Barley", Age=8, Vaccinated=true },
          new Pet { Name="Boots", Age=4, Vaccinated=false },
          new Pet { Name="Whiskers", Age=1, Vaccinated=false } };

    // Determine whether any pets over age 1 are also unvaccinated.
    bool unvaccinated =
        pets.Any(p => p.Age > 1 && p.Vaccinated == false);

    Console.WriteLine(
        "There {0} unvaccinated animals over age one.",
        unvaccinated ? "are" : "are not any");
}

// This code produces the following output:
//
//  There are unvaccinated animals over age one.

Remarques

Note

Cette méthode ne retourne aucun élément d’une collection. Au lieu de cela, il détermine si des éléments d’une collection remplissent une condition.

L’énumération de source est arrêtée dès que le résultat peut être déterminé.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Any() clause se traduit par un appel de Any.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0