iterator 属性
override
一个新的 Iterator
,允许迭代此 Iterable
的元素。
迭代器类可以指定其元素的迭代顺序(例如 List 总是按照索引顺序迭代),或者可以不指定(例如基于哈希的 Set 可以以任何顺序进行迭代)。
每次读取 iterator
时,它返回一个新的迭代器,可用于再次遍历所有元素。同一可迭代序列的迭代器可以独立地逐个检索,但只要基础集合未更改,就应按相同的顺序返回相同的元素。
修改集合可能导致新的迭代器产生不同的元素,并可能改变现有元素的顺序。一个 List 明确指定其迭代顺序,因此修改列表可以可预测地改变迭代顺序。基于哈希的 Set 在向集合添加新元素时可能会完全更改其迭代顺序。
在创建新的迭代器之后修改基础集合可能会导致在下次调用该迭代器的 Iterator.moveNext 方法时出错。任何 可修改的 可迭代类应指定哪些操作会破坏迭代。
实现
RuneIterator get iterator => RuneIterator(string);