首页 » SEO优化 » phpForeach和迭代器技巧_Java迭代器iterator详解以及和for轮回的差异

phpForeach和迭代器技巧_Java迭代器iterator详解以及和for轮回的差异

访客 2024-10-31 0

扫一扫用手机浏览

文章目录 [+]

Iterator对凑集类中的任何一个实现类,都可以返回这样一个Iterator工具。
可以适用于任何一个类。

由于凑集类(List和Set等)可以装入的工具的类型是不愿定的,从凑集中取出时都是Object类型,用时都须要进行逼迫转化,这样会很麻烦,用上泛型,便是提前见告凑集确定要装入凑集的类型,这样就可以直策应用而不用显示类型转换.非常方便.

phpForeach和迭代器技巧_Java迭代器iterator详解以及和for轮回的差异

foreach和Iterator的关系:

phpForeach和迭代器技巧_Java迭代器iterator详解以及和for轮回的差异
(图片来自网络侵删)

for each以用来处理凑集中的每个元素而不用考虑凑集定下标。
便是为了让用Iterator大略。
但是删除的时候,差异便是在remove,循环中调用凑集remove会导致原凑集变革导致缺点,而该当用迭代器的remove方法。

利用for循环还是迭代器Iterator比拟:

采取ArrayList对随机访问比较快,而for循环中的get()方法,采取的即是随机访问的方法,因此在ArrayList里,for循环较快

采取LinkedList则是顺序访问比较快,iterator中的next()方法,采取的即是顺序访问的方法,因此在LinkedList里,利用iterator较快

从数据构造角度剖析,for循环适宜访问顺序构造,可以根据下标快速获取指定元素.而Iterator 适宜访问链式构造,由于迭代器是通过next()和Pre()来定位的.可以访问没有顺序的凑集.

而利用 Iterator 的好处在于可以利用相同办法去遍历凑集中元素,而不用考虑凑集类的内部实现(只要它实现了 java.lang.Iterable 接口),如果利用 Iterator 来遍历凑集中元素,一旦不再利用 List 转而利用 Set 来组织数据,那遍历元素的代码不用做任何修正,如果利用 for 来遍历,那所有遍历此凑集的算法都得做相应调度,由于List有序,Set无序,构造不同,他们的访问算法也不一样.(还是解释了一点遍历和凑集本身分离了)

相关文章

我国土地利用分类代码的构建与应用

土地利用分类代码是我国土地管理的重要组成部分,是土地资源调查、规划、利用和保护的依据。土地利用分类代码的构建与应用显得尤为重要。本...

SEO优化 2025-02-18 阅读1 评论0

微信跳转微信支付便捷支付体验的秘密武器

移动支付已成为人们日常生活中不可或缺的一部分。作为我国领先的社交平台,微信支付凭借其便捷、安全的支付方式,深受广大用户的喜爱。而微...

SEO优化 2025-02-18 阅读1 评论0

探寻会计科目代码背后的奥秘分类与

会计科目代码是会计信息系统中不可或缺的组成部分,它将企业的经济活动进行分类和归纳,为会计核算、财务分析和决策提供重要依据。本文将从...

SEO优化 2025-02-18 阅读1 评论0