C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のAsEnumerable()メソッドの使い方と実例

C#におけるAsEnumerable()メソッドとは

C#では、特定の型(配列やListなど)をIEnumerable型として扱いたい場合に、AsEnumerable()メソッドを使用します。このメソッドはSystem.Linq名前空間で提供される拡張メソッドであり、呼び出し元のコレクションをそのままIEnumerable<T>インターフェースとして返します。

AsEnumerable()はコレクション自体をコピーするわけではなく、単に参照をIEnumerableとして公開するため、パフォーマンスへの影響も最小限に抑えられます。LINQの標準クエリ演算子を使用したい場合などに活用される便利なメソッドです。

サンプルで使用する配列

まずは、以下のようにint型の配列を用意します。

int[] arr = new int[5];
arr[0] = 10;
arr[1] = 20;
arr[2] = 30;
arr[3] = 40;
arr[4] = 50;

IEnumerable型への変換

この配列に対してAsEnumerable()を呼び出すことで、IEnumerable型として取得できます。

arr.AsEnumerable();

完全なコード例

以下は、AsEnumerable()を使って配列をIEnumerable型に変換し、foreachループで各要素を出力する完全なサンプルプログラムです。

using System;
using System.Linq;
class Demo {
    static void Main() {
        int[] arr = new int[5];
        arr[0] = 10;
        arr[1] = 20;
        arr[2] = 30;
        arr[3] = 40;
        arr[4] = 50;
        var res = arr.AsEnumerable();
        foreach (var ele in res) {
            Console.WriteLine(ele);
        }
    }
}

実行結果

プログラムを実行すると、配列内のすべての要素が順番に出力されます。

10
20
30
40
50

まとめ

AsEnumerable()メソッドを使えば、配列などの具体的なコレクション型を簡単にIEnumerable型へ変換できます。拡張メソッドとして定義されているため、using System.Linq; を追加するだけで利用可能です。LINQクエリを柔軟に組み立てたい場面でぜひ活用してみてください。

  1. C#で配列を反転する方法|Array.Reverseの使い方を解説

    C#で配列の要素の並びを逆にしたい場合は、Array.Reverseメソッドを使うのが最も簡単です。この記事では、元の配列の準備から反転処理、実行結果までをわかりやすく解説します。 1. 元の配列を用意する まず、反転対象となる元の配列を定義し、その内容をコンソールに表示してみましょう。 int[] arr = { 1, 2, 3 }; // 元の配列を表示 Console.WriteLine(Original Array= ); foreach (int i in arr) { Console.WriteLine(i); } 2. Array.Reverse()で配列を反転する 配

  2. C#で配列を反転する方法【Array.Reverseメソッドの使い方】

    C#で配列の要素を逆順に並べ替えたい場合は、Array.Reverseメソッドを使用します。このメソッドは、引数に渡した配列の要素の順序をその場で反転させるため、ループ処理を自分で書く必要がなく、非常に簡単です。 元の配列を用意する まず、反転対象となる配列を定義し、その内容をコンソールに表示してみましょう。 int[] arr = { 15, 16, 17, 18 }; // 元の配列 Console.WriteLine(Original Array= ); foreach (int i in arr) {    Console.WriteLine(i);