关于内置委托的用法

Posted huangliming

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于内置委托的用法相关的知识,希望对你有一定的参考价值。


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


以上是关于关于内置委托的用法的主要内容,如果未能解决你的问题,请参考以下文章

C#中常见的系统内置委托用法详解(抄录)

C#-WebForm-★内置对象简介★Request-获取请求对象Response相应请求对象Session全局变量(私有)Cookie全局变量(私有)Application全局公共变量Vi(代码片段

关于C#中delegate的用法

对“xxx”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们。 错误解决一例。(代码片段

委托代码func和Action的基本用法

关于 global nonlocal 用法