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);
}
);
int[] evenIntegers = Array.FindAll(_integers, delegate(int integer)
{
return (integer%2 == 0);
}
);
上面的代码使用了匿名方法来获得数组中能被2整除的数,其中的匿名方法是:
delegate(int integer)
{
return (integer%2 == 0);
}
{
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);
}
int[] evenIntegers = Array.FindAll(_integers, IsEven);
private bool IsEven(int integer)
{
return (integer%2 == 0);
}
匿名方法用于那种方法比较简单,而且不会在其他地方被调用的情况,我们还可以像下面这样用匿名方法:
button1.Click +=
delegate
{
MessageBox.Show("Hello");
};
delegate
{
MessageBox.Show("Hello");
};