Func<T, TResult> 委托
2012-08-25 14:04
471 查看
Func<T, TResult> 委托
封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。
public delegate TResult Func<in T, out TResult>(T arg)
类型参数
in T
此委托封装的方法的参数类型。
该类型参数是逆变的。即可以使用指定的类型或派生程度更低的类型。有关协变和逆变的更多信息,请参见泛型中的协变和逆变。
out TResult
此委托封装的方法的返回值类型。
该类型参数是协变的。即可以使用指定的类型或派生程度更高的类型。有关协变和逆变的更多信息,请参见泛型中的协变和逆变。
参数
arg
类型:T
此委托封装的方法的参数。
返回值
类型:TResult
此委托封装的方法的返回值。
[csharp]view plaincopyprint?
string mid = ",middle part,";
///匿名写法
Func<string,
string> anonDel = delegate(string param)
{
param += mid;
param += " And this was added to the string.";
return param;
};
///λ表达式写法
Func<string, string> lambda = param =>
{
param += mid;
param += " And this was added to the string.";
return param;
};
///λ表达式写法(整形)
Func<int,
int> lambdaint = paramint =>
{
paramint = 5;
return paramint;
};
///λ表达式带有两个参数的写法
Func<int,
int, int> twoParams = (x, y) =>
{
return x*y;
};
MessageBox.Show("匿名方法:"+anonDel("Start of string"));
MessageBox.Show("λ表达式写法:" + lambda("Lambda expression"));
MessageBox.Show("λ表达式写法(整形):" + lambdaint(4).ToString());
MessageBox.Show("λ表达式带有两个参数:" + twoParams(10, 20).ToString());
string mid = ",middle part,"; ///匿名写法 Func<string, string> anonDel = delegate(string param) { param += mid; param += " And this was added to the string."; return param; }; ///λ表达式写法 Func<string, string> lambda = param => { param += mid; param += " And this was added to the string."; return param; }; ///λ表达式写法(整形) Func<int, int> lambdaint = paramint => { paramint = 5; return paramint; }; ///λ表达式带有两个参数的写法 Func<int, int, int> twoParams = (x, y) => { return x*y; }; MessageBox.Show("匿名方法:"+anonDel("Start of string")); MessageBox.Show("λ表达式写法:" + lambda("Lambda expression")); MessageBox.Show("λ表达式写法(整形):" + lambdaint(4).ToString()); MessageBox.Show("λ表达式带有两个参数:" + twoParams(10, 20).ToString());
相关文章推荐
- 如何声明和使用 Func<T1, T2, TResult> 委托
- Func<T1, TResult> 委托
- Func<T, TResult> 委托的由来和调用和好处(为了高大上,为了白富美)
- Func<T, ..., TResult> 委托 实现方法嵌套
- Func<T, TResult> 委托使用详解
- 参考例子,学习Func<T, TResult>委托
- Func<T,TResult>泛型委托
- Func<T, TResult> 委托
- Func<T,TResult>泛型委托
- Func<T,TResult>泛型委托
- 使用Func<T1, T2, TResult> 委托返回匿名对象
- C# 笔记 Func<TResult> 委托、Action<T> 委托
- Func<TResult>委托和Action委托
- Func<TResult>委托,Action 委托,Tuple 类
- Func<T, TResult> 委托
- 泛型委托 Action<T>和Func<T,TResult>
- Func<T,TResult>泛型委托
- Func<T1, T2, TResult> 泛型委托
- Func<TResult> 委托
- Func<T,TResult>泛型委托