ホームページ > バックエンド開発 > C++ > LINQを使用して生年月日が初期の人を見つける方法は?

LINQを使用して生年月日が初期の人を見つける方法は?

Linda Hamilton
リリース: 2025-02-01 03:46:35
オリジナル
850 人が閲覧しました

How to Find the Person with the Earliest Birthdate Using LINQ?

linqを使用して、最小または最大属性値のオブジェクトを見つけます

Linqは、データを照会する強力で効率的な方法を提供します。特に、特定の属性値が最小または最大のオブジェクトを見つけるなど、特定の条件に応じてオブジェクトを選択する場合に特に役立ちます。

人オブジェクトを含むリストがあると仮定すると、これらのオブジェクトには空になる可能性のある存在属性があります。最も早い生年月日を決定する必要がある場合があります。

1つの方法は、MINメソッドを使用してDateOfBirthプロパティの最小値を見つけることです。ただし、これは最低日付値のみを返し、実際の人オブジェクトではありません。

対応するオブジェクトを取得するには、集約方法を使用できます。

集計メソッドは、2つのパラメーターを使用します。初期アキュムレータ値と関数を使用します。これは、現在のアキュムレータとシーケンス内の各要素を組み合わせて、新しいアキュムレータ値を生成します。
var firstBorn = People.Aggregate((curMin, x) => (curMin == null || (x.DateOfBirth ?? DateTime.MaxValue) < (curMin.DateOfBirth ?? DateTime.MaxValue)) ? x : curMin);
ログイン後にコピー
この例では、初期アキュムレータ値はnullに設定されています。この関数は、現在のアキュムレータ値がnullであるか、現在のアキュムレータのdatefbirthプロパティよりも早く現在の要素のdatefbirthプロパティ(datetime.maxvalueをnull値に置き換える)であるかどうかを確認するために集約メソッドに渡されました。それが真実である場合、関数は現在の要素を新しいカミュレータとして返します。

骨材の結果は、出生時の最古のオブジェクトです。このより簡潔な方法では、対応するオブジェクトを取得するために2番目のクエリを実行する必要はありません。

以上がLINQを使用して生年月日が初期の人を見つける方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート