【C#入門】OfTypeの使い方を解説【LINQ】


C#の『OfType』の使い方が分からない…教えてください!


C#を学んでいるけど…

OfTypeの使い方が分からない

このような疑問を持っていませんか?

この記事では、LINQのひとつである『OfType』について現役エンジニアが分かりやすく解説します。

まだ、C#の開発環境構築が出来ていない方はこちらを参考にしてください。

OfTypeの使い方

OfTypeの使い方を解説する前に、OfTypeで何が出来るのかを把握しておきましょう。

OfType = 指定した型の値を抽出

このような考え方で問題ありません。OfTypeを使用すると配列(リスト)などから、指定した型の値を返します

似たようなLinqにCastがあります。

それでは、実際のコードを用いながらOfTypeの使い方を解説していきます。

まずは、OfTypeの使い方から説明します。OfTypeを使うときには以下のように記述します。

配列.OfType<型名>()

実際のコードを用いながらOfTypeの使い方を解説していきます。

OfTypeを使ってシーケンスを出力するときには以下のように記述します。

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

namespace sample
{
    class LinqOfType
    {
        static public void BlogLinqOfType()
        {
            //Listのインスタンスを生成
            System.Collections.ArrayList List = new System.Collections.ArrayList(5);
            List.Add(1);
            List.Add("AAA");
            List.Add(10);
            List.Add("ZZZ");
            List.Add(100);

            IEnumerable<string> ListOfType = List.OfType<string>();

            //OfTypeの実行結果を出力
            foreach (string str in ListOfType)
            {
                Console.WriteLine(str);
            }
        }
    }
}

サンプルコードを実行した際の出力結果は、以下のようになります。

AAA
ZZZ

注目していただきたいのは、OfTypeを使っている19行目です。

配列.OfType<型名>()

これを基にサンプルコードを解説すると、「配列 = List」、「型名 = String)」となります。

つまり、配列(List型名(String)を満たす値を出力(Console.WriteLine)するということです。

このようにして、C#ではOfTypeを使用することで、配列(リスト)に任意の型の値を返すというコードを簡潔に書くことが出来ます。

【まとめ】OfTypeは指定した型の値を抽出できる

OfTypeの使い方は理解できましたか?

まとめ

  • OfType = 指定した型の値を抽出
  • 配列.OfType<型名>()

この記事では、C#のOfTypeの使い方について紹介しました。

最後になりますが、ここに関してもっと詳しく教えて欲しいときなどは、遠慮なく、お問い合わせ、コメント、Twitterにてご連絡ください。

最後までお読みいただきありがとうございました。

Tech Academy

  • 受講者数No.1のプログラミングスクール
  • 通過率10%の選考に合格した優秀な講師
  • カリキュラムを閲覧制限なし
  • コースの種類が豊富
  • オンラインで完結
  • 無料体験あり
  • 無料カウンセリングあり
  • 学割あり

\ 公式サイトはこちら /

Tech Academy 公式サイト