系统内置委托Action和func】的更多相关文章

Action委托, action是系统内置的委托,它可指向无返回值,没有参数的方法. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void print() { Console.WriteLine("he…
C#中常见的系统内置委托 Action类.Func类.Predicate<T>.Comparison<T>委托 Action类的委托 Action委托 封装一个方法,该方法不具有参数并且不返回值 Action<T>委托 封装一个方法,该方法只有一个参数并且不返回值 Action<T1,T2>委托 封装一个方法,该方法具有两个参数并且不返回值 static void Main(string[] args) { #region Action<T>委托…
.NET 为我们提供了无返回值的内置委托 Action,代码如下: // 摘要: // 封装一个方法,该方法只有一个参数并且不返回值. // // 参数: // obj: // 此委托封装的方法的参数. // // 类型参数: // T: // 此委托封装的方法的参数类型. public delegate void Action<in T>(T obj); 现在我们对集合中的元素自定义排序. 定义排序方法: //排序 public static void MySort(List<int&…
在公共语言运行时(CLR)环境中系统为我们内置了一些常用的委托,包括Action类的委托.Func类的委托.Predicate<T>委托.Comparison<T>委托等等.以上这些委托的命名空间都是System,所属程序集都是 mscorlib.dll,今天我就来讲一讲这些委托的使用方法. 就像我们自己已定义好的一样,要实现某些功能,我们可以直接利用系统内置委托,实例化它们,而不必显式定义一个新委托并将命名方法分配给该委托.如: public static void Test()…
1.自动属性 Auto-Implemented Properties 2.隐式类型 var  var变量不能作为全局变量使用,因为不能在编译时确定类型 3.参数默认值 和 命名参数 4.对象初始化器 与 集合初始化器 { } Person p = new Person(){ Name="aa",Age=18};//属性初始化器 List<Person> list = new List<Person>(){new Person(){ Name="aa&q…
内置委托的定义声明: System.Func,代表有返回类型的委托: public delegate TResult Func<out TResult>(); public delegate TResult Func<in T, out TResult>(T arg); …… 注:输入泛型参数 -in 最多可以有16个,输出泛型参数 -out 只有一个. System.Action,代表无返回类型的委托: public delegate void Action(); public…
这是一个线程不安全的问题.跨线程操作问题. 比如我们需要在线程中改变textbox的文本,textbox的name是txtShowMsg 第一种方法(不推荐使用) 在窗体构造函数中写Control.CheckForIllegalCrossThreadCalls =false; 这种方法,只是不去检查跨线程的安全性. 第二种方法(推荐使用) 第一步:定义一个委托 /// <summary> /// 委托改变 Text的值 /// </summary> /// <param na…
Predicate 泛型委托:表示定义一组条件并确定指定对象是否符合这些条件的方法.此委托由 Array 和 List 类的几种方法使用,用于在集合中搜索元素. public delegate bool Predicate<T>(T obj);类型参数介绍:T: 要比较的对象的类型.obj: 要按照由此委托表示的方法中定义的条件进行比较的对象.返回值:如果 obj 符合由此委托表示的方法中定义的条件,则为 true:否则为 false. List<String> listStrin…
lSystem.Func 代表有返回类型的委托 lpublic delegate TResult  Func<out TResult>(); lpublic delegate TResult  Func<in T, out TResult>(T arg); l...... l注:输入泛型参数-in 最多16个,输出泛型参数 -out 只有一个. lSystem.Action 代表无返回类型的委托 lpublic delegate void Action<in T>(T…
前言 最近在阅读某开源框架源码的时候,发现作者在其中运用了很多Action委托和Func委托,虽然我之前在项目中也有一些对委托的实操,但还是免不了长时间的不用,当初消化的一些委托基础都遗忘了...索性,趁热打铁,借助这次分享的机会,也帮自己重新巩固下.Net中关于委托的一些基础用法. 直奔主题 从.Net Framework1.0开始就为我们提供了委托的功能使用.那个时候.Net内置委托Action和Func还没有问世,那么,我们先来看看1.0版本时候的委托.委托从字面上来理解就是"帮别人干活&…