常见迭代器模式

枚举器的迭代器模式

class MyClass

{

  public IEnumrator<string> GetEnumerator()

  {

    return IteratorMethod();

  }

 

  public IEnumerator<string> IteratorMethod()

  {

    yield return ..;

  }

 

}

 

Main

{

  MyClass mc = new MyClass();

  foreach(string x in mc)

  .....

}

 

 

可枚举类型的迭代器模式

class MyClass

{

  public IEnumerator<string> GetEnumerator()

  {

    return IteratorMethod().GetEnumerator();

  }

 

  public IEnumerable<string> IteratorMethod()

  {

    yield return ...;

  }

}

 

Main

{

  MyClass mc = new MyClass();

  foreach(string x in mc)

  ......

 

  foreach(string x in mc.IteratorMethod())

  .....


}

posted @ 2019-11-28 14:57  八风不动  阅读(114)  评论(0)    收藏  举报