如何描述返回值(非空)?</t>的Action <t>委托

时间:2010-11-12 04:39:49

标签: c# .net delegates

Action<T>代表返回无效。是否有任何其他内置委托返回非空值?

2 个答案:

答案 0 :(得分:66)

是。 Func<>返回指定为最终泛型类型参数的类型,以便Func<int>返回intFunc<int, string>接受整数并返回一个字符串。例子:

Func<int> getOne = () => 1;
Func<int, string> convertIntToString = i => i.ToString();
Action<string> printToScreen = s => Console.WriteLine(s);
// use them

printToScreen(convertIntToString(getOne()));

答案 1 :(得分:17)

当然,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

另外,为了完整起见,有谓词返回bool。

Predicate<T> is "bool method(T param)"

http://msdn.microsoft.com/en-us/library/bfcke1bz.aspx