더북(TheBook)

45.7 IEnumerator 인터페이스 사용하기

이번에는 닷넷에 내장된 IEnumerator 인터페이스를 사용해 보겠습니다. 다음 내용을 입력한 후 실행해 보세요.

IEnumerator 인터페이스 사용: IEnumeratorDemo.cs

using System;
using System.Collections;

class IEnumeratorDemo
{
    static void Main()
    {
        string[] names = { "닷넷코리아", "비주얼아카데미" };

        //① foreach 문으로 출력
        foreach (string name in names)
        {
            Console.WriteLine(name);
        }

        //② IEnumerator 인터페이스를 사용한 데이터 출력: foreach 문과 동일
        IEnumerator list = names.GetEnumerator(); //하나씩 열거
        while (list.MoveNext())                   //값이 있는 동안 반복
        {
            Console.WriteLine(list.Current);      //현재 반복 중인 데이터 출력
        }
    }
}

실행 결과

닷넷코리아
비주얼아카데미
닷넷코리아
비주얼아카데미

IEnumerator 인터페이스는 문자열 배열 등 GetEnumerator() 메서드의 결괏값을 담아 MoveNext() 메서드로 값이 있는지 확인하고, Current 속성으로 현재 반복되는 데이터를 가져다 사용할 수 있습니다. 물론 IEnumerator 인터페이스 개체를 굳이 이러한 메서드로 사용할 필요는 없습니다. 학습을 위해 GetEnumerator(), MoveNext(), Current 등을 사용한 것입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.