当前位置: 首页 > news >正文

北京综合网站建设报价与做网站的人怎么谈判

北京综合网站建设报价,与做网站的人怎么谈判,金山网站建设费用,威海建设集团网站首页Iterator public interface IteratorE {} terator是一个接口#xff0c;它是集合的迭代器。集合可以通过Iterator去遍历集合中的元素。Iterator提供的API接口如下#xff1a; forEachRemaining(Consumer? super E action)#xff1a;为每个剩余元素执行给…Iterator public interface IteratorE {} terator是一个接口它是集合的迭代器。集合可以通过Iterator去遍历集合中的元素。Iterator提供的API接口如下 forEachRemaining(Consumer? super E action)为每个剩余元素执行给定的操作,直到所有的元素都已经被处理或行动将抛出一个异常 hasNext()如果迭代器中还有元素则返回true。 next()返回迭代器中的下一个元素 remove()删除迭代器新返回的元素。 例子 import java.util.*; public class TestIterator {public static void main(String[] args) {ArrayListString a new ArrayListString();a.add(aaa);a.add(bbb);a.add(ccc);System.out.println(Before iterate : a);IteratorString it a.iterator();while (it.hasNext()) {String t it.next();if (bbb.equals(t)) {it.remove();}}System.out.println(After iterate : a);} } 注意 1Iterator只能单向移动。 2Iterator.remove()是唯一安全的方式来在迭代过程中修改集合如果在迭代过程中以任何其它的方式修改了基本集合将会产生未知的行为。而且每调用一次next()方法remove()方法只能被调用一次如果违反这个规则将抛出一个异常。 ListIterator Interface ListIteratorE{} 包含的方法有 (1)双向移动向前/向后遍历. (2)产生相对于迭代器在列表中指向的当前位置的前一个和后一个元素的索引. (3)可以使用set()方法替换它访问过的最后一个元素. Iterator和ListIterator区别 我们在使用ListSet的时候为了实现对其数据的遍历我们经常使用到了Iterator(迭代器)。使用迭代器你不需要干涉其遍历的过程只需要每次取出一个你想要的数据进行处理就可以了。但是在使用的时候也是有不同的。List和Set都有iterator()来取得其迭代器。对List来说你也可以通过listIterator()取得其迭代器两种迭代器在有些时候是不能通用的Iterator和ListIterator主要区别在以下方面 1ListIterator有add()方法可以向List中添加对象而Iterator不能 2ListIterator和Iterator都有hasNext()和next()方法可以实现顺序向后遍历但是ListIterator有hasPrevious()和previous()方法可以实现逆向顺序向前遍历。Iterator就不可以。 3ListIterator可以定位当前的索引位置nextIndex()和previousIndex()可以实现。Iterator没有此功能。 4都可实现删除对象但是ListIterator可以实现对象的修改set()方法可以实现。Iierator仅能遍历不能修改。 因为ListIterator的这些功能可以实现对LinkedList等List数据结构的操作。其实数组对象也可以用迭代器来实现。 Iterable or each原理 其实for each循环内部也是依赖于Iterator迭代器只不过Java提供的语法糖Java编译器会将其转化为Iterator迭代器方式遍历。我们对以下for each循环进行反编译 for (Integer i : list) {System.out.println(i);} 反编译后 Integer i; for(Iterator iterator list.iterator(); iterator.hasNext(); System.out.println(i)){i (Integer)iterator.next(); } 有一个问题为什么不直接将hasNext()next()方法放在Iterable接口中其他类直接实现就可以了 原因是有些集合类可能不止一种遍历方式实现了Iterable的类可以再实现多个Iterator内部类例如LinkedList中的ListItr和DescendingIterator两个内部类就分别实现了双向遍历和逆序遍历。通过返回不同的Iterator实现不同的遍历方式这样更加灵活。如果把两个接口合并就没法返回不同的Iterator实现类了。
http://www.w-s-a.com/news/886569/

相关文章:

  • 网站建设的语言优化企业网站
  • 成都旅游网站建设规划女性门户资讯类网站织梦dedecms模板
  • 二手车为什么做网站网站建设合作合同范文
  • 网站建设维护和网页设计做网站都需要服务器吗
  • 成都网站设计报告书系统平台
  • 怎样进行网站推广wordpress微博图床
  • 做一个平台 网站服务器搭建网架公司股价
  • 链家在线网站是哪个公司做的一个虚拟主机做2个网站
  • 网站开发实训报告模板学校网站建设计划
  • 免费手机网站制作方法什么事网站开发
  • 我们的爱情网站制作阿里云wordpress配置
  • 电脑网站页面怎么调大小唐山网站建设技术外包
  • 科威网络做网站怎么样wordpress分页样式
  • 泰安公司网站建设自助建站程序
  • 网站建设工程设计图建网站怎样往网站传视频
  • 做网站月入企业网站建设运营
  • 网站建设中的ftp地址公众号微官网
  • 手机wap网站开发与设计app开发公司电话
  • 网站页脚代码大沥网站开发
  • 重庆网站制作公司 广州天成网络技术有限公司
  • 佛山网站改版wordpress 是否有后门
  • 如何承接网站建设外包wordpress产品布局
  • 洛阳建站洛阳市网站建设视觉设计专业
  • 婚恋网站建设分析网站建设硬件需求
  • 北京做网站电话wordpress如何换图片
  • 电影网站做cpa深圳信息网
  • 单县网站建设优化大师电脑版官网
  • 番禺区住房和建设局物业网站浦东新区网站设计
  • 外贸网站外包WordPress仿牌
  • 如何设计网站logohtml5开发