IEnumerable 인터페이스와 유사하지만 강력한 형식이다.
특정 유형의 foreach 루프를 사용하여 클래스를 열거할 수 있도록 이 인터페이스를 구현한다.
public class MyEnumerable<T> : IEnumerable<T>
{
private List<T> data;
public MyEnumerable(List<T> data)
{
this.data = data;
}
public IEnumerator<T> GetEnumerator()
{
return data.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
}
이 예에서 MyEnumerable<T> 클래스는 IEnumerable<T> 인터페이스를 구현하여 데이터를 특정 유형
으로 열거할 수 있도록 합니다.
GetEnumerator 메서드는 컬렉션에 대한 열거자를 반환합니다.