Enumerable.Any 메서드

정의

시퀀스에 요소가 하나라도 있는지 또는 특정 조건에 맞는 요소가 있는지 확인합니다.Determines whether any element of a sequence exists or satisfies a condition.

오버로드

Any<TSource>(IEnumerable<TSource>)

시퀀스에 요소가 하나라도 있는지 확인합니다.Determines whether a sequence contains any elements.

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

시퀀스에 특정 조건에 맞는 요소가 있는지 확인합니다.Determines whether any element of a sequence satisfies a condition.

Any<TSource>(IEnumerable<TSource>)

시퀀스에 요소가 하나라도 있는지 확인합니다.Determines whether a sequence contains any elements.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static bool Any(System::Collections::Generic::IEnumerable<TSource> ^ source);
public static bool Any<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);
static member Any : seq<'Source> -> bool
<Extension()>
Public Function Any(Of TSource) (source As IEnumerable(Of TSource)) As Boolean

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IEnumerable<TSource>

비어 있는지 확인할 IEnumerable<T>입니다.The IEnumerable<T> to check for emptiness.

반환

소스 시퀀스에 요소가 하나라도 있으면 true이고, 그렇지 않으면 false입니다.true if the source sequence contains any elements; otherwise, false.

예외

sourcenull입니다.source is null.

예제

다음 코드 예제에 사용 하는 방법을 보여 줍니다. Any 시퀀스에 요소가 하나라도 있는지 여부를 확인 하려면.The following code example demonstrates how to use Any to determine whether a sequence contains any elements.

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.
' Create a list of Integers.
Dim numbers As New List(Of Integer)(New Integer() {1, 2})

' Determine if the list contains any items.
Dim hasElements As Boolean = numbers.Any()

' Display the output.
Dim text As String = IIf(hasElements, "not ", "")
MsgBox("The list is " & text & "empty.")

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

부울 값를 Any<TSource>(IEnumerable<TSource>) 조건자에는 일반적으로 메서드가 반환를 where 절 (Where Visual Basic의 절) 직접 호출이 나는 Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) 메서드.The Boolean value that the Any<TSource>(IEnumerable<TSource>) method returns is typically used in the predicate of a where clause (Where clause in Visual Basic) or a direct call to the Where<TSource>(IEnumerable<TSource>, Func<TSource,Boolean>) method. 다음 예제에서는이 사용 된 Any 메서드.The following example demonstrates this use of the Any method.

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
    */
}
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Structure Person
    Public LastName As String
    Public Pets() As Pet
End Structure

Sub AnyEx2()
    Dim people As New List(Of Person)(New Person() _
{New Person With {.LastName = "Haas",
                  .Pets = New Pet() {New Pet With {.Name = "Barley", .Age = 10},
                                     New Pet With {.Name = "Boots", .Age = 14},
                                     New Pet With {.Name = "Whiskers", .Age = 6}}},
  New Person With {.LastName = "Fakhouri",
                   .Pets = New Pet() {New Pet With {.Name = "Snowball", .Age = 1}}},
  New Person With {.LastName = "Antebi",
                   .Pets = New Pet() {}},
  New Person With {.LastName = "Philips",
                   .Pets = New Pet() {New Pet With {.Name = "Sweetie", .Age = 2},
                                      New Pet With {.Name = "Rover", .Age = 13}}}})

    ' Determine which people have a non-empty Pet array.
    Dim names = From person In people
                Where person.Pets.Any()
                Select person.LastName

    For Each name As String In names
        Console.WriteLine(name)
    Next

    ' This code produces the following output:
    '
    ' Haas
    ' Fakhouri
    ' Philips

End Sub

설명

참고

이 메서드는 컬렉션의 단일 요소를 반환 하지 않습니다.This method does not return any one element of a collection. 대신, 컬렉션에 요소가 하나라도 있는지 여부를 결정 합니다.Instead, it determines whether the collection contains any elements.

열거형 source 결과 확인할 수 있습니다 하는 즉시 중지 됩니다.The enumeration of source is stopped as soon as the result can be determined.

Visual Basic 쿼리 식 구문에는 Aggregate Into Any() 절 뒤에 변환 Any합니다.In Visual Basic query expression syntax, an Aggregate Into Any() clause translates to an invocation of Any.

추가 정보

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

시퀀스에 특정 조건에 맞는 요소가 있는지 확인합니다.Determines whether any element of a sequence satisfies a condition.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static bool Any(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, bool> ^ predicate);
public static bool Any<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,bool> predicate);
static member Any : seq<'Source> * Func<'Source, bool> -> bool
<Extension()>
Public Function Any(Of TSource) (source As IEnumerable(Of TSource), predicate As Func(Of TSource, Boolean)) As Boolean

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IEnumerable<TSource>

요소에 조건자를 적용할 IEnumerable<T>입니다.An IEnumerable<T> whose elements to apply the predicate to.

predicate
Func<TSource,Boolean>

각 요소를 조건에 대해 테스트하는 함수입니다.A function to test each element for a condition.

반환

지정된 조건자의 테스트를 통과하는 요소가 소스 시퀀스에 하나라도 있으면 true이고, 그렇지 않으면 false입니다.true if any elements in the source sequence pass the test in the specified predicate; otherwise, false.

예외

source 또는 predicatenull인 경우source or predicate is null.

예제

다음 코드 예제에 사용 하는 방법을 보여 줍니다. Any 시퀀스의 모든 요소가 조건을 충족 하는지 확인 합니다.The following code example demonstrates how to use Any to determine whether any element in a sequence satisfies a condition.

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.
Structure Pet
    Public Name As String
    Public Age As Integer
    Public Vaccinated As Boolean
End Structure

Shared Sub AnyEx3()
    ' Create a list of Pets
    Dim pets As New List(Of Pet)(New Pet() _
                         {New Pet With {.Name = "Barley", .Age = 8, .Vaccinated = True},
                          New Pet With {.Name = "Boots", .Age = 4, .Vaccinated = False},
                          New Pet With {.Name = "Whiskers", .Age = 1, .Vaccinated = False}})

    ' Determine whether any pets over age 1 are also unvaccinated.
    Dim unvaccinated As Boolean =
pets.Any(Function(pet) pet.Age > 1 And pet.Vaccinated = False)

    ' Display the output.
    Dim text As String = IIf(unvaccinated, "are", "are not")
    MsgBox("There " & text & " unvaccinated animals over age 1.")
End Sub

' This code produces the following output:
'
' There are unvaccinated animals over age 1.

설명

참고

이 메서드는 컬렉션의 단일 요소를 반환 하지 않습니다.This method does not return any one element of a collection. 대신 컬렉션의 모든 요소가 조건을 만족 하는지 여부를 결정 합니다.Instead, it determines whether any elements of a collection satisfy a condition.

열거형 source 결과 확인할 수 있습니다 하는 즉시 중지 됩니다.The enumeration of source is stopped as soon as the result can be determined.

Visual Basic 쿼리 식 구문에는 Aggregate Into Any() 절 뒤에 변환 Any합니다.In Visual Basic query expression syntax, an Aggregate Into Any() clause translates to an invocation of Any.

추가 정보

적용 대상