Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# Any() 메서드 – 시퀀스에서 조건을 만족하는 요소가 있는지 확인하는 방법

C# Any() 메서드란?

C#의 Any() 메서드는 시퀀스(컬렉션)에 포함된 요소 중 하나라도 특정 조건을 만족하는지 검사하는 LINQ 확장 메서드입니다.

조건을 만족하는 요소가 하나라도 존재하면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

예제 소개

다음과 같은 정수 배열이 있다고 가정해 보겠습니다.

int[] arr = {5, 7, 10, 12, 15, 18, 20};

Any() 메서드를 사용하여 이 배열의 요소 중 10보다 큰 값이 하나라도 있는지 확인해 보겠습니다.

arr.AsQueryable().Any(val => val > 10);

조건을 만족하는 요소가 하나라도 있으면 True가 반환됩니다.

전체 예제 코드

using System;
using System.Linq;

class Demo {
    static void Main() {
        int[] arr = {5, 7, 10, 12, 15, 18, 20};

        // 배열 요소 중 10보다 큰 값이 있는지 확인
        bool res = arr.AsQueryable().Any(val => val > 10);

        Console.WriteLine(res);
    }
}

실행 결과

True

배열에는 12, 15, 18, 20처럼 10보다 큰 요소가 여러 개 존재하므로, Any() 메서드는 True를 반환합니다.

참고 사항

Any()는 조건을 만족하는 첫 번째 요소를 발견하는 즉시 검사를 중단하므로 전체 컬렉션을 끝까지 순회하지 않아 성능 면에서 효율적입니다. 또한 람다 식 없이 매개변수 없이 호출하면 시퀀스에 요소가 하나라도 존재하는지만 빠르게 확인할 수 있습니다.