[.NET クラスライブラリ Tips][LINQ] 指定されたインデックスにある要素を取得し範囲外の場合はデフォルト値を取得する(ElementAtOrDefaultメソッド)

スポンサーリンク

本記事の概要

この記事では、LINQを使用して、指定されたインデックスにある要素を取得し範囲外の場合はデフォルト値を取得する方法について説明します。

公式サイト情報はコチラを参照してください。

 

指定されたインデックスにある要素を取得し範囲外の場合はデフォルト値を取得する

C# LINQのElementAtOrDefaultメソッドは、指定されたインデックスにある要素を取得するために使用されるメソッドであり、インデックスが範囲外の場合はデフォルト値を返します。以下は、ElementAtOrDefaultメソッドの使用例です。

インデックスが範囲内の場合と範囲外の場合でElementAtOrDefaultを使用する

以下の例では、string型の配列(fruits)を定義し、それぞれに名前が付けられたいくつかのフルーツを格納しています。その後、要素を取得するために使用される2つのインデックス(index1、index2)を定義しています。

最初の要素取得では、範囲内のインデックス(index1)を使用して、ElementAtOrDefaultメソッドを使用して指定されたインデックスにあるフルーツを取得しています。

次に、範囲外のインデックス(index2)を使用して、同じメソッドを使用して、デフォルト値を返すことができることを示しています。ここでは、string型の場合はnullが返されます。

string[] fruits = { "apple", "banana", "orange", "grape", "pear" };

// 範囲内のインデックス
int index1 = 2;
string fruit1 = fruits.ElementAtOrDefault(index1);
Console.WriteLine("インデックスが " + index1 + " のフルーツは " + fruit1);

// 範囲外のインデックス
int index2 = 10;
string fruit2 = fruits.ElementAtOrDefault(index2);
Console.WriteLine("インデックスが  " + index2 + " のフルーツは " + fruit2);

出力結果は以下の通りです。

インデックスが 2 のフルーツは orange
インデックスが 10 のフルーツは

 

.NET クラス Tips 一覧

これまでに紹介した .NET Tips 一覧はこちら

Please follow and like us:

コメント

タイトルとURLをコピーしました