回答編集履歴
1
説明訂正
answer
CHANGED
|
@@ -8,6 +8,6 @@
|
|
|
8
8
|
|
|
9
9
|
英語が得意じゃないので間違ってるかもですが「このプロジェクトでは変更可能な変数をlambdaの中で参照することをゴールとはしない。でも将来またこの点を検討することもあるかもね」というような意味と捉えました。3年前なので状況は変わっているかもしれませんが・・・可能性としてはなくはないといったところでしょうか。
|
|
10
10
|
|
|
11
|
-
C#では質問者さんがいったような考え方(配列ではなくてlambdaのためにコンパイラーが自動生成する無名クラスのフィールドとして)サポートしているようで、ローカル変数への代入が無名クラスのフィールドの代入に置き換わるように見えました。javaのlambdaの実装も似た雰囲気なので同様の方式はとれると思います。
|
|
11
|
+
C#では質問者さんがいったような考え方(配列ではなくてlambdaのためにコンパイラーが自動生成する無名クラスのフィールドとして)サポートしているようで、ローカル変数への代入が無名クラス(的なもの)のフィールドの代入に置き換わるように見えました。javaのlambdaの実装も似た雰囲気なので同様の方式はとれると思います。
|
|
12
12
|
|
|
13
13
|
この仕様は実装の手間もさりながらJavaのポリシーにあうのかどうかも争われる気がします。
|