你可以使用代表,它也有趣解决短程序的现实世界问题:
public void CollatzTest(int n)
{
var f = new Func<int, int>[] { i => i / 2, i => i * 3 + 1 };
while (n != 1)
n = f[n % 2](n);
}
Run Code Online (Sandbox Code Playgroud)
它也适用于动作和直接方法引用
private void DelegateActionStartTest()
{
Action[] Actions = new Action[] { UselesstTest, IntervalTest, Euler13 };
int nFunction = 2;
Actions[nFunction]();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
126 次 |
| 最近记录: |