简体   繁体   中英

Difference between create Enumerable or Enumerator using Iterators in C#

What is the difference between creating Enumerable or Enumerator using Iterators in C#? I know that Iterators are used to create a private class that implements Enumerable or Enumerator...

Which way is better to create an enumerable type?

Every type that implements the IEnumerable interface should implement a method GetEnumerator which returns a type that implements the IEnumerator interface. Then having an enumerator you can use the foreach statement, which in its essence implements the iterator pattern, to traverse the elements of a collection of your custom type.

For further clarification please take a look to the following links:

  1. IEnumerable
  2. IEnumerator
  3. Iterator Pattern

So in order to answer to your question, I have to say that we shouldn't try to compare the IEnumerable and IEnumerator . They both are used together, when we want to use the iterator pattern for a custom type.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM