[c#] C# 이터레이터와 순차적 접근

C#에서 이터레이터는 컬렉션의 각 요소에 순차적으로 접근하는 데 사용되는 기능입니다. 이터레이터를 사용하면 컬렉션의 항목을 반복하거나 필터링하여 반환하는 데 유용합니다.

이터레이터 메서드

C#에서 이터레이터를 구현하려면 yield 키워드를 사용한 메서드를 작성해야 합니다.

public IEnumerable<int> GetNumbers()
{
    yield return 1;
    yield return 2;
    yield return 3;
}

위의 예제에서 GetNumbers 메서드는 각 숫자를 순차적으로 반환합니다. yield return 문은 메서드를 일시 중단하고 값을 반환한 후 다시 시작하는 것을 허용합니다.

foreach 문과의 사용

yield 키워드를 사용하여 이터레이터를 정의하면 foreach 문을 사용하여 컬렉션의 각 요소에 순차적으로 접근할 수 있습니다.

foreach (var number in GetNumbers())
{
    Console.WriteLine(number);
}

위의 예제에서 GetNumbers 메서드를 호출하여 반환된 값들을 순차적으로 출력할 수 있습니다.

이터레이터를 사용하면 복잡한 로직을 간결하게 표현하고, 순차적인 요소에 접근하는 코드를 간편하게 작성할 수 있습니다.

참고 자료