列举 - Enumeration

迭代器是一个值序列(集合)上的一个只读且只向前移动的游标。迭代器要么实现了IEnumerator接口,要么实现了IEnumerator<T>接口。

从技术的角度看,如果一个对象有MoveNext方法以及Current属性,那么我们就可以将其看作一个迭代器。

我们可以使用foreach语句去迭代一个可列举对象。可迭代的对象其实就是一个序列的逻辑体现。可列举的对象不但自身就是一个游标,而且它还可以生成一个游标迭代自己。因此,可列举的对象有两个特性

  • 实现IEnumerator接口,或实现IEnumerator<T>接口
  • 有一个方法GetEnumerator,该方法返回一个迭代器

列举模式:

class Enumerator
{
    public IteratorVariableType Current {get {...}}   
    public bool MoveNext() {...}
}

class Enumerable
{
    public Enumerator GetEnumerator() {...}
}
Enumeration pattern

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-12-13
  • 2021-05-30
  • 2021-08-20
  • 2021-07-02
猜你喜欢
  • 2022-12-23
  • 2021-12-05
  • 2022-12-23
  • 2022-01-20
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案