[C#] 16일차 - 115. Func와 Action으로 델리게이트를 더 간단히 만들기C#/C#200제2021. 2. 14. 13:42
Table of Contents
Func 델리게이트는 결과를 반환하는 메소드를 참조하기위해
Action 델리게이트는 결과를 반환하지 않는 메소드를 참조하기위해 사용된다.
거의 모든 델리게이트를 Func와 Action으로 쓸 수 있다.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace A115_FuncAndAction
{
class Program
{
// delegate bool MemberTest(int x); Func를 사용하므로 필요없어짐
static void Main(string[] args)
{
var arr = new[] { 3, 34, 6, 34, 7, 8, 24, 3, 675, 8, 23 };
int n = Count(arr, delegate (int x) { return x % 2 == 0; });
Console.WriteLine("짝수의 개수 : {0}", n);
n = Count(arr, delegate (int x) { return x % 2 != 0; });
Console.WriteLine("홀수의 개수 : {0}", n);
}
private static int Count(int[] arr, Func<int, bool> testMethod)
{
int cnt = 0;
foreach(var n in arr)
{
if (testMethod(n))
cnt++;
}
return cnt;
}
}
}
반응형
'C# > C#200제' 카테고리의 다른 글
[C#] 17일차 - 118. Predicate<T> 델리게이트 (0) | 2021.02.15 |
---|---|
[C#] 17일차 - 117. 람다식의 사용 (0) | 2021.02.15 |
[C#] 16일차 - 114. 이름 없는 델리게이트 (0) | 2021.02.14 |
[C#] 16일차 - 113. Delegate의 기본, 배열에서 홀수와 짝수 찾기 (0) | 2021.02.14 |
[C#] 16일차 - 112. 인덱서 (0) | 2021.02.14 |
@반나무 :: 반나무_뿌리
3년차 WPF 개발자입니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!