標籤:blog io ar for sp div on art log
class Program { static void Main(string[] args) { SorAndShowFiles("Sorted by name", delegate(FileInfo f1, FileInfo f2) { return f1.Name.CompareTo(f2.Name); } ); Console.ReadKey(); } delegate void SampleDelegate(string x); public static void CandidateAction(string x) { Console.WriteLine("CandidateAction"); } public static void SorAndShowFiles(string title, Comparison<FileInfo> sortOder) { FileInfo[] files = new DirectoryInfo(@"F:\").GetFiles(); Array.Sort(files, sortOder); Console.WriteLine(title); foreach (FileInfo file in files) { Console.WriteLine("Name:{0} Length:{1} bytes", file.Name, file.Length); } } // }
///剛開始研究匿名方法和Lambda運算式,試著寫了一個例子
這段代碼在開始的時候初始化了一個字串列表(string list),然後通過列表的FindAll方法來尋找以“sunny”起始的字串,最後將所尋找到的所有結果輸出。
List<string> names = new List<string>(); names.Add("Sunny Chen"); names.Add("Sunny Wang"); names.Add("DDDD Crystal"); //第一個階段 匿名方法 List<string> found = names.FindAll(new Predicate<string>(delegate(string name) { return name.StartsWith("Sunny", StringComparison.OrdinalIgnoreCase); })); //方式二 匿名方法 List<string> found2 = names.FindAll(delegate(string name) { return name.StartsWith("Sunny", StringComparison.OrdinalIgnoreCase); }); //方式三 Lambda運算式 List<string> found3=names.FindAll(x=>(x.StartsWith("Sunny", StringComparison.OrdinalIgnoreCase))); if (found!=null) { foreach (string item in found) { Console.WriteLine(item); } } Console.ReadKey();
C# 匿名方法 1027