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

C# 배열의 TrueForAll() 메서드 완벽 정리

C#에서 Array.TrueForAll() 메서드를 사용하면 배열의 모든 요소가 특정 조건을 만족하는지 한 번에 확인할 수 있습니다. 이 메서드는 검사할 배열과 조건을 나타내는 Predicate<T> 델리게이트(람다 식)를 인수로 받으며, 모든 요소가 조건을 충족하면 true, 단 하나라도 충족하지 않으면 false를 반환합니다.

예제

using System;
using System.Text;

public class Demo {
   public static void Main() {
      int[] val = { 97, 45, 76, 21, 89, 45 };

      // 배열의 모든 요소가 1보다 큰지 확인
      bool result = Array.TrueForAll(val, res => res > 1);
      Console.WriteLine(result);
   }
}

출력 결과

True

위 예제에서 배열 val의 모든 요소(97, 45, 76, 21, 89, 45)는 1보다 크기 때문에 최종적으로 true가 출력됩니다.

조건을 만족하지 않는 경우

반대로 하나라도 조건을 벗어나는 요소가 있다면 어떻게 되는지 살펴보겠습니다.

using System;

public class Demo {
   public static void Main() {
      int[] val = { 97, 45, 76, 21, 89, 45 };

      // 모든 요소가 50보다 큰지 확인 (21은 50보다 작음)
      bool result = Array.TrueForAll(val, res => res > 50);
      Console.WriteLine(result);
   }
}

출력 결과

False

배열의 요소 중 2145가 50보다 작으므로 결과는 false가 됩니다. 참고로 TrueForAll()은 조건을 만족하지 않는 요소를 발견하는 즉시 검사를 중단하므로, 큰 배열에서도 효율적으로 동작합니다.

정리

  • Array.TrueForAll(배열, 조건) 형태로 호출합니다.
  • 모든 요소가 조건을 만족하면 true, 그렇지 않으면 false를 반환합니다.
  • 조건은 람다 식으로 간결하게 작성할 수 있어 반복문 없이도 가독성 높은 코드를 작성할 수 있습니다.