2009年12月14日月曜日

LINQにより取得したデータをToArrayで配列に変換して遅延実行を回避する。
using System;
using System.Collections.Generic;
using System.Linq;


class MainClass
{
    static void Main()
    {
        // string型のリストを定義
        var slist = new List<string>() { "Sample", "Sample1", "Sample2" };


        /* LINQでデータを取得し
        遅延実行を回避するため
        ToArrayで配列に変換 */
        var sample = (from s in slist select s).ToArray();


        // 取得して配列に変換したデータを出力
        // Sample Sample1 Sample2
        foreach (var a in sample)
        {
            Console.Write(a + " ");
        }
        // 改行
        Console.WriteLine("");


        // sample[0]sample[1]を入れ替える
        string tmp = slist[0];
        slist[0] = slist[1];
        slist[1] = tmp;


        // 遅延実行が回避されていることを確認
        foreach (var a in sample)
        {
            Console.Write(a + " ");
        }
        Console.WriteLine("");
    }
}

0 コメント:

コメントを投稿