当前位置:主页   - 电脑 - 网站开发 - ASP.Net
了解c#2.0中的Anonymous Methods(匿名方法)
来源:设计前沿收集   作者:未知   更新时间:2009-02-02
收藏此页】    【字号    】    【打印】    【关闭

    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");
        };


其它资源
来源声明

版权与免责声明
1、本站所发布的文章仅供技术交流参考,本站不主张将其做为决策的依据,浏览者可自愿选择采信与否,本站不对因采信这些信息所产生的任何问题负责。
2、本站部分文章来源于网络,其版权为原权利人所有。由于来源之故,有的文章未能获得作者姓名,署“未知”或“佚名”。对于这些文章,有知悉作者姓名的请告知本站,以便及时署名。如果作者要求删除,我们将予以删除。除此之外本站不再承担其它责任。
3、本站部分文章来源于本站原创,本站拥有所有权利。
4、如对本站发布的信息有异议,请联系我们,经本站确认后,将在三个工作日内做出修改或删除处理。
请参阅权责声明