Iterator-迭代器 ############### * 迭代器模式(Iterator Design Pattern),也叫作游标模式(Cursor Design Pattern) .. note:: accesses the elements of an object sequentially without exposing its underlying representation. Iterator 接口有两种定义方式:: 1. next () 函数用来将游标后移一位元素,currentItem () 函数用来返回当前游标指向的元素 2. 返回当前元素与后移一位这两个操作,要放到同一个函数 next () 中完成。 使用迭代器为啥不能增删元素 ========================== 在通过迭代器来遍历集合元素的同时,增加或者删除集合中的元素,有可能会导致某个元素被重复遍历或遍历不到。不过,并不是所有情况下都会遍历出错,有的时候也可以正常遍历,所以,这种行为称为结果不可预期行为或者未决行为,也就是说,运行结果到底是对还是错,要视情况而定。 有两种比较干脆利索的解决方案:: 一种是遍历的时候不允许增删元素 另一种是增删元素之后让遍历报错。