日更(五十五)-Android-迭代器模式

瞎扯

又到了水一水的时候了.

为什么要有迭代器.

next

就是读下一个元素.迭代器的原则就是.
不管,你怎么实现.
迭代器只会一直取下一个值,直到没有为止.

应用场景

一般来说,用这个玩意了,说明要动态删除元素了.
也就是遍历的时候删除.

正常情况下,不管用foreach还是for循环.都会抛出异常.
就是告诉你,不能直接删除集合元素,

但是迭代器不会.

为什么呢?

为什么用迭代器删除,不会抛出异常.

其实原理很简单.

迭代器会copy集合的所有元素.进行遍历,也就是
copy一份元素的地址值过来.

但是当你调用了迭代器遍历删除的时候.

不会删除迭代器copy的这些值.而是会删除集合的值.

所以迭代器会不受影响的从头到尾的遍历下去.

而且集合的元素也成功删除了.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章