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