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

瞎扯

又到了水一水的时候了.

为什么要有迭代器.

next

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

应用场景

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

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

但是迭代器不会.

为什么呢

其实原理很简单.

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

但是当你调用了迭代器remove方法时.

却不会删除迭代器中copy的这些.而是会去删除集合中对应位置的.

这样迭代器就会不受影响的从头到尾的遍历下去.

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


交流群:493180098,这是个很少吹水,交流学习的群.
APP开发维护咨询群 : 492685472 ,承接APP迭代.开发维护.咨询业务,付费快速解决问题.

你可能感兴趣的:(日更(五十五)-Android-迭代器模式)