C#

86.C# - 지연된실행

Godffs 2009. 8. 19. 23:48
반응형
여기서 말하는 예제는 쿼리문안에 값이 저장되어 있지 않는것이 아니고 쿼리문은
위에서 정렬된 값을 다시 정렬시켜 출력하는 예제 입니다.

Program.cs
using System;
using System.Linq;

public class 지연된실행
{
    public static void Main()
    {
        int[] data = { 3, 5, 4, 2, 1 };
        var q = from d in data orderby d select d;
       
        foreach (var item in q)
{ Console.WriteLine("{0}",item ); }

        Console.WriteLine();

        //중간에 데이터 변경
        // q 라는 변수에 값이 아니라 query문이 저장되있으므로
        // 중간에 data 변경 되어도 결과값에 영향을 미치지 않는다.

        data[0] = 1000; //3 에서 1000으로
        Console.WriteLine("다시정렬");

        foreach(var item in q) {
            Console.WriteLine("{0}",item); //1,2,4,5,1000
        }
    }
}

결과화면


반응형