c# lamada表示式

pengfoo發表於2014-03-05

相關在部落格中介紹的很詳細了。特轉載學習學習。

http://www.cnblogs.com/OceanEyes/archive/2012/08/27/2658920.html

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace Testing2
{
    
    class Program
    {
        static void Main(string[] args)
        {
            int[] array = { 1, 2, 3, 5, 6, 6, 7, 8, 9 };
            //使用匿名方法來求偶數
            //List<int> newList = MyFilter(array, delegate(int i) {

            //    return i % 2 == 0;
            //});
            //使用Lambda表示式求偶數
            List<int> newList = MyFilter(array, i => i % 2 == 0);

            foreach (int item in newList)
            {
                Console.WriteLine(item);
            }
            Console.ReadKey();

        }
        //Func<int,bool>: 封裝了一個具有一個int引數並且返回型別為bool型別的方法
        static List<int> MyFilter(int[] array, Func<int, bool> filter)
        {
            List<int> list = new List<int>();
            for (int i = 0; i < array.Length; i++)
            {
                if (filter(array[i]))
                {
                    list.Add(array[i]);
                }
            }
            return list;
        }

    }
}


 

相關文章