私はC#に慣れようとして、次のプログラムを試しました。これは、配列内の偶数の平均を出力するだけです。
誰かがここで問題を強調することができれば素晴らしいでしょう。
あなたはselect.Average()
(parensと共に)必要です。
括弧の欠落()
がエラーの理由です。Average()
括弧がないと、メソッド グループとして理解されます。平均的なメソッドには複数のオーバーロードが含まれる可能性があり、特定のオーバーロードされたメソッドを呼び出す必要があるかどうかは不明です。しかし、括弧に言及すると、意図が明確になり、メソッドが呼び出されます。
を呼び出していませんAverage
。する必要がありますselect.Average()
Average
問題は、メソッド(拡張タイプ)であるため、括弧を含めるのを忘れたことです。別の解決策は、次のようなラムダ式を使用することです。
var numbers = new[] { 1, 2, 3, 4, 5 };
Console.WriteLine(numbers.Where(x => (x % 2) == 0).Average());
また
var numbers = new[] { 1, 2, 3, 4, 5 };
var select = (from num in numbers where (num % 2) == 0 select num).Average();
Console.WriteLine(select);
これは拡張機能Method
なので、次のようにする必要があります。Average()
(括弧())で