C#って関数内関数ってできないよね。
例えばScalaでいう
def hogehoge() = {
def calc(x: Int) = {
if (x > 0) x+1
else x-1
}
Array(1,2,3).map(calc)
}
みたいなことをC#でやろうとすると
private int calcHogehoge(int x) {
if (x > 0) return x + 1;
else return x - 1;
}
public Array<int> hogehoge() {
return [1,2,3].map(calcHogehoge);
}
みたいになってとっても残念な気持ちになる。