基础代码分析之四:委托与匿名方法

来源:互联网 发布:网络党建工作调研报告 编辑:程序博客网 时间:2024/06/01 10:19

   匿名方法顾名思义就是没有名称的方法,委托的定义需要使用delegate关键字,委托中匿名方法使用的关键就是使用用这个关键字,这个关键字应该是让编译器可以按照左边的委托类型进行正确的代码补全(创建委托实例)进行编译,生成IL.匿名了,参数列表,实现均不受影响。

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;namespace GenericTest20131211{    class SortAndOutputFileInDir    {        public static void SortAndPrint(string title, Comparison<FileInfo> SortMethod)        {            Console.WriteLine("Input a directory on the local computer.");            string dirlocal = Console.ReadLine();            FileInfo[] fileinfolist = new DirectoryInfo(@dirlocal).GetFiles();            Array.Sort(fileinfolist, SortMethod);            Console.WriteLine(title);            foreach(FileInfo fi in fileinfolist)            {                Console.WriteLine("name: {0}, size:{1} Bytes", fi.Name, fi.Length);            }        }        public static void Test()        {            Comparison<FileInfo> sortmethod = delegate(FileInfo x, FileInfo y) { return x.Length.CompareTo(y.Length); };            SortAndPrint("File List", sortmethod);        }    }}
1 DirectoryInfo可以获取文件夹,文件夹中文件的相关信息

2 Comparison<T>基于泛型委托的比较器

3 Array对于数组类型变量的Sort方法。


0 0
原创粉丝点击