LastOrDefault(TSource) メソッド (IEnumerable(TSource), Func(TSource, Boolean))
この記事は機械翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。 詳細情報
訳文
原文

Enumerable.LastOrDefault<TSource> メソッド (IEnumerable<TSource>, Func<TSource, Boolean>)

 

条件を満たす、シーケンスの最後の要素を返します。このような要素が見つからない場合は既定値を返します。

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

public static TSource LastOrDefault<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, bool> predicate
)

パラメーター

source

返される要素が含まれる IEnumerable<T>

predicate

各要素が条件を満たしているかどうかをテストする関数。

戻り値

Type: TSource

シーケンスが空の場合、または述語関数でテストに合格する要素がない場合は default (TSource)。それ以外の場合は、述語関数でテストに合格する最後の要素。

型パラメーター

TSource

source の要素の型。

Exception Condition
ArgumentNullException

source または predicatenull です。

参照型および null 許容型の既定値は null です。

述語の条件に合格することで LastOrDefault<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>) を使用する方法を次のコード例に示します。メソッドの 2 番目の呼び出しでは、条件を満たす要素がシーケンスにありません。

double[] numbers = { 49.6, 52.3, 51.0, 49.4, 50.2, 48.3 };

double last50 = numbers.LastOrDefault(n => Math.Round(n) == 50.0);

Console.WriteLine("The last number that rounds to 50 is {0}.", last50);

double last40 = numbers.LastOrDefault(n => Math.Round(n) == 40.0);

Console.WriteLine(
    "The last number that rounds to 40 is {0}.",
    last40 == 0.0 ? "<DOES NOT EXIST>" : last40.ToString());

/*
 This code produces the following output:

 The last number that rounds to 50 is 50.2.
 The last number that rounds to 40 is <DOES NOT EXIST>.
*/

Universal Windows Platform
4.5 から利用可能
.NET Framework
3.5 から利用可能
Portable Class Library
サポート対象 : portable .NET platforms
Silverlight
2.0 から利用可能
Windows Phone Silverlight
7.0 から利用可能
Windows Phone
8.1 から利用可能
トップに戻る
表示:
© 2016 Microsoft