current 属性
覆盖
当前元素。
如果迭代器尚未移动到第一个元素(尚未调用moveNext),或者如果迭代器已经移动到Iterable的最后一个元素之后(moveNext返回false),则current是不确定的。在这种情况下,迭代器可能抛出异常或返回特定的默认值。
即使底层集合发生变化,current
属性应该保持其值,直到下一次调用moveNext。在成功调用moveNext
之后,用户不需要缓存当前值,可以直接从迭代器读取。
final colors = ['blue', 'yellow', 'red'];
var colorsIterator = colors.iterator;
while (colorsIterator.moveNext()) {
print(colorsIterator.current);
}
示例的输出是
blue
yellow
red
实现
T get current => _current as T;