我如何描述返回值(非void)的Action <T>委托?
Action<T>
委托返回void。 有没有其他内置的委托返回非空值?
是。 Func<>
返回指定为最终genericstypes参数的types,例如Func<int>
返回一个int
, Func<int, string>
接受一个整数并返回一个string。 例子:
Func<int> getOne = () => 1; Func<int, string> convertIntToString = i => i.ToString(); Action<string> printToScreen = s => Console.WriteLine(s); // use them printToScreen(convertIntToString(getOne()));
当然,Func代表返回T.
Func<TResult> is "TResult method()" Func<TInput, TResult> is "TResult method(TInput param)"
一路下来
Func<T1, T2, T3, T4, TResult>
http://msdn.microsoft.com/en-us/library/bb534960.aspx
http://msdn.microsoft.com/en-us/library/bb534303.aspx
另外,为了完整起见,还有Predicate返回bool。
Predicate<T> is "bool method(T param)"