LINQクイズの質問と回答からQ4とQ5へ
colors
配列を次のように定義します 。
string[] colors = { "green", "brown", "blue", "red" };
回答からQ4へのクエリ:
var query =
from c in colors
where c.Length == colors.Max (c2 => c2.Length)
select c;
c2.Length
外部クエリの反復式が16回評価されること を正しく理解していますか?
с
つまり、colors
配列内のアイテムごとに、colors.Max (c2 => c2.Length)
が1回評価されます。つまり、Max()
計算は合計4回行われます。Max()
そして、評価ごとc2.Length
に4回見つかりますか?