迭代器模式
1 这个模式确实很常见,需要熟悉,C#里面经常会看到相关的结构。一个迭代结构 Iterator,Iterator里面有moveNext()的方法。一个包含迭代结构的类,该类自己存储要遍历迭代的数据,在自己内部实现Iterator的继承结构,并且有一个返回该继承Iterator类实例的方法 GetIterator()。
public interface Iterator
{
object Next();
bool HasNext();
}
public class JayChou : Iterator
{
public List<string> cards = new List<string>() { "BMW" ,"Benz","Lexus"};
public int index = -1;
public Iterator GetIterator()
{
return this;
}
public bool HasNext()
{
if (index < cards.Count && cards.Count != 0)
{
return true;
}
return false;
}
public object Next()
{
index++;
return cards[index];
}
}