エクスポート (0) 印刷
すべて展開
この記事は機械翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。 詳細情報
訳文
原文

Enumerable.Sum<TSource> メソッド (IEnumerable<TSource>, Func<TSource, Double>)

入力シーケンスの各要素に対して変換関数を呼び出して取得する Double 値のシーケンスの合計を計算します。

名前空間:  System.Linq
アセンブリ:  System.Core (System.Core.dll 内)

public static double Sum<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, double> selector
)

型パラメーター

TSource

source の要素の型。

パラメーター

source
型 : System.Collections.Generic.IEnumerable<TSource>
合計の計算に使用される値のシーケンス。
selector
型 : System.Func<TSource, Double>
各要素に適用する変換関数。

戻り値

型 : System.Double
射影された値の合計。

使用上の注意

Visual Basic および Visual C# では、このメソッドを、IEnumerable<TSource> 型のオブジェクトのインスタンス メソッドとして呼び出すことができます。インスタンス メソッド構文を使用してこのメソッドを呼び出す場合は、最初のパラメーターを省略します。詳細については、「拡張メソッド (Visual Basic)」または「拡張メソッド (C# プログラミング ガイド)」を参照してください。

例外条件
ArgumentNullException

source または selectornull です。

source に要素が含まれない場合、このメソッドは 0 を返します。

source のメンバーを数値型 (具体的には Double) に射影する selector 関数を指定すると、このメソッドを任意の値のシーケンスに適用できます。

Visual Basic のクエリ式の構文では、Aggregate Into Sum() 句が Sum の呼び出しに変換されます。

Sum<TSource>(IEnumerable<TSource>, Func<TSource, Double>) を使用してシーケンスの射影された値を合計する方法を次のコード例に示します。


            class Package
            {
                public string Company { get; set; }
                public double Weight { get; set; }
            }

            public static void SumEx1()
            {
                List<Package> packages =
                    new List<Package> 
                        { new Package { Company = "Coho Vineyard", Weight = 25.2 },
                          new Package { Company = "Lucerne Publishing", Weight = 18.7 },
                          new Package { Company = "Wingtip Toys", Weight = 6.0 },
                          new Package { Company = "Adventure Works", Weight = 33.8 } };

                double totalWeight = packages.Sum(pkg => pkg.Weight);

                Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
            }

            /*
             This code produces the following output:

             The total weight of the packages is: 83.7
            */



.NET Framework

サポート対象 : 4.5.2、4.5.1、4.5、4、3.5

.NET Framework Client Profile

サポート対象 : 4、3.5 SP1

汎用性のあるクラス ライブラリ

サポート対象 : 汎用性のあるクラス ライブラリ

Windows ストア アプリ用 .NET

サポート対象 : Windows 8

Windows Phone アプリ用 .NET

サポート対象 : Windows Phone 8、Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (サーバー コア ロールはサポート対象外), Windows Server 2008 R2 (SP1 以降でサーバー コア ロールをサポート。Itanium はサポート対象外)

.NET Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

コミュニティの追加

追加
表示:
© 2014 Microsoft