了解c#2.0中的Anonymous Methods(匿名方法)

王朝c#·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

Anonymous Methods 是 C#2.0的新特性之一,它允许我们在代码中创建一个内置的没有方法名的方法,将代码与委托实例相关联,从而使委托的实例化工作更加直观和方便,提高了代码的可读性和可维护性。下面来看一个简单的匿名方法的使用:

private int[] _integers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

int[] evenIntegers = Array.FindAll(_integers, delegate(int integer)

{

return (integer%2 == 0);

}

);

上面的代码使用了匿名方法来获得数组中能被2整除的数,其中的匿名方法是:

delegate(int integer)

{

return (integer%2 == 0);

}

如果我们不用匿名方法,我们就需要专门创建一个方法,如下:

private int[] _integers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

int[] evenIntegers = Array.FindAll(_integers, IsEven);

private bool IsEven(int integer)

{

return (integer%2 == 0);

}

匿名方法用于那种方法比较简单,而且不会在其他地方被调用的情况,我们还可以像下面这样用匿名方法:

button1.Click +=

delegate

{

MessageBox.Show("Hello");

};

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航