关于内置委托的用法
程序员文章站
2022-07-06 11:53:15
Func函数 以上内容参考自:https://www.cnblogs.com/0weibin/p/3955207.html ......
action委托
static void main(string[] args) { #region func<t,tresult>委托示例 //需求:查找整型集合list中大于3的所有元素组成的新集合,并打印出集合元素 list<int> list = new list<int>() { 1, 2, 3, 4, 5 }; //将匿名方法分配给 func<t,tresult> 委托实例 func<int, bool> concat1 = delegate(int i) { return i > 3; }; var newlist1 = list.where(concat1).tolist(); //将 lambda 表达式分配给 func<t,tresult> 委托实例 func<int, bool> concat2 = i => i > 3; var newlist2 = list.where(concat2).tolist(); newlist1.foreach(i => console.writeline(i.tostring())); newlist2.foreach(i => console.writeline(i.tostring())); console.readkey(); #endregion }
func函数
predicate static void main(string[] args) { #region predicate<t>委托示例 //需求:查找整型集合list中大于3的所有元素组成的新集合,并打印出集合元素 list<int> list = new list<int>() { 1, 2, 3, 4, 5 }; //将匿名方法分配给 predicate<t> 委托实例 predicate<int> concat1 = delegate(int i) { return i > 3; }; var newlist1 = list.findall(concat1); //将 lambda 表达式分配给 predicate<t> 委托实例 predicate<int> concat2 = (c => c > 3); var newlist2 = list.findall(concat2); newlist1.foreach(i => console.writeline(i)); newlist2.foreach(i => console.writeline(i)); console.readkey(); #endregion }
static void main(string[] args) { #region action<t>委托示例 //需求:打印出整型集合list的元素 list<int> list = new list<int>() { 1, 2, 3, 4, 5 }; //将匿名方法分配给 action<t> 委托实例 action<int> concat1 = delegate(int i) { console.writeline(i); }; list.foreach(concat1); //将 lambda 表达式分配给 action<t> 委托实例 action<int> concat2 = (i => console.writeline(i)); list.foreach(concat2); console.readkey(); #endregion }
以上内容参考自:https://www.cnblogs.com/0weibin/p/3955207.html