[.NET クラスライブラリ Tips][LINQ] 指定された型にキャスト可能な要素を抽出して新しいシーケンスを作成する(OfTypeメソッド)

スポンサーリンク

概要

LinqのOfTypeメソッドは、シーケンスの要素のうち、指定された型にキャスト可能な要素だけを抽出して、新しいシーケンスを作成します。

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

構文

OfTypeメソッドの構文は以下の通りです。

var result = sequence.OfType<T>();

ここで、sequenceはシーケンス、Tはキャストする型を表します。

OfTypeメソッドは、指定された型にキャスト可能な要素だけを抽出して、新しいシーケンスを作成します。キャストが失敗した場合は、その要素は新しいシーケンスに含まれません。

OfTypeメソッドの使用例

以下は、OfTypeメソッドを使用して、文字列型だけを抽出する例です。

using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main(string[] args)
    {
        List<object> list = new List<object>();
        list.Add("apple");
        list.Add(100);
        list.Add("orange");
        list.Add(200);
        list.Add("grape");
        list.Add(300);

        var result = list.OfType<string>();

        foreach (string str in result)
        {
            Console.WriteLine(str);
        }
    }
}

実行結果は以下の通りです。

apple
orange
grape

この例では、オブジェクト型のリストから、文字列型だけを抽出しています。OfTypeメソッドを使用することで、コードを簡潔に書くことができます。

Please follow and like us:

コメント

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