.net 自带的委托有时真的非常方便.
**Action<T> 无返回值 迭代操作**
定义:
public delegate void Action<in T>(T obj);
多达16个泛型参数重载;
使用:
list.ForEach((c) => Console.WriteLine(c.Id + c.UserName));
**Func<T,TResult> 泛型返回 查找**
定义:
public delegate TResult Func<out TResult>();
使用:
list.Where(c => c.Id == 3).ToList();
**Comparison<T,T> 比较**
定义:
public delegate int Comparison<in T>(T x, T y);
使用:
list.Sort((a, c) => c.Id - a.Id); //倒序
**Predicate<T> 操作**
定义:
public delegate bool Predicate<in T>(T obj);
使用:
list.FindAll(c => c.Id == 3);
**Action<T> 无返回值 迭代操作**
定义:
public delegate void Action<in T>(T obj);
多达16个泛型参数重载;
使用:
list.ForEach((c) => Console.WriteLine(c.Id + c.UserName));
**Func<T,TResult> 泛型返回 查找**
定义:
public delegate TResult Func<out TResult>();
使用:
list.Where(c => c.Id == 3).ToList();
**Comparison<T,T> 比较**
定义:
public delegate int Comparison<in T>(T x, T y);
使用:
list.Sort((a, c) => c.Id - a.Id); //倒序
**Predicate<T> 操作**
定义:
public delegate bool Predicate<in T>(T obj);
使用:
list.FindAll(c => c.Id == 3);