Predicate Delegate

홈 > 공유팁! > 프로그램 관련
프로그램 관련

Predicate<T> Delegate

꽁스짱 0 916
.NET의 Predicate<T> delegate는 Action/Func delegate와 비슷한데, 리턴값이 반드시 bool이고 입력값이 T 타입인 delegate이다. Action이나 Func와 달리, 입력 파라미터는 1개이다. 이 특수한 delegate는 .NET의 Array나 List 클래스의 메서드들에서 자주 사용된다. Predicate<T>은 Func<T, bool>와 같이 표현할 수 있는데, Func이 실제로 보다 많은 함수들을 표현할 수 있다. Predicate은 .NET 2.0에서 Array나 List등을 지원하기 위해 만들어 졌으며, 보다 일반화된 Func는 .NET 3.5에서 도입되어 LINQ 등을 지원하도록 만들어 졌다.
 

예제

// Predicate<T>
Predicate<int> p = delegate(int n)
{
   return n >= 0;
};
bool res = p(-1);

Predicate<string> p2 = s => s.StartsWith("A");
res = p2("Apple");

 
0 Comments
제목