このページは役に立ちましたか。
このページのコンテンツについての ご意見をお待ちしております
その他にご意見はありますか。
残り 1500 文字
エクスポート (0) 印刷
すべて展開
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

Enumerable.Max<TSource> メソッド (IEnumerable<TSource>, Func<TSource, Int32>)

2013/12/12

シーケンスの各要素に対して変換関数を呼び出し、Int32 の最大値を返します。

Namespace:  System.Linq
アセンブリ:  System.Core (System.Core.dll 内)

public static int Max<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, int> selector
)

型パラメーター

TSource

source の要素の型。

パラメーター

source
型: System.Collections.Generic.IEnumerable<TSource>
最大値を確認する対象の値からなるシーケンス。
selector
型: System.Func<TSource, Int32>
各要素に適用する変換関数。

戻り値

型: System.Int32
シーケンス内の最大値。

使用上の注意

Visual Basic および C# では、このメソッドを、IEnumerable<TSource> 型の任意のオブジェクトのインスタンス メソッドとして呼び出すことができます。インスタンス メソッド構文を使用してこのメソッドを呼び出す場合は、最初のパラメーターを省略します。

例外条件
ArgumentNullException

source または selectornull です。

InvalidOperationException

source に要素が含まれていません。

Max<TSource>(IEnumerable<TSource>, Func<TSource, Int32>) メソッドは、IComparable<T>Int32 実装を使用して値を比較します。

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

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

次に、Max<TSource>(IEnumerable<TSource>, Func<TSource, Int32>) を使用して、投影された値のシーケンスの最大値を確認するコード例を示します。


      class Pet
      {
         public string Name { get; set; }
         public int Age { get; set; }
      }

      public static void MaxEx4()
      {
         Pet[] pets = { new Pet { Name="Barley", Age=8 },
                            new Pet { Name="Boots", Age=4 },
                            new Pet { Name="Whiskers", Age=1 } };

         int max = pets.Max(pet => pet.Age + pet.Name.Length);

         outputBlock.Text += String.Format(
             "The maximum pet age plus name length is {0}.",
             max) + "\n";
      }

      /*
       This code produces the following output:

       The maximum pet age plus name length is 14.
      */



Windows Phone OS

サポート: 8.0, 7.1, 7.0

表示:
© 2015 Microsoft