package com.test;import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;//    迭代器在变量元素的时候要注意事项:
//      在迭代器迭代元素的过程中,不允许使用集合对象改变集合中的元素的个数(也就是添加或者删除),可以进行修改
//      如果需要添加或者删除只能使用迭代器的方法进行操作//      如果使用集合对象在迭代的过程中改变集合的元素个数,会出现异常 java.util.ConcurrentModificationException//       迭代器迭代的过程:就是迭代器从创建开始,到最后一次使用的过程中。          public class Iter {public static void main(String[] args) {List list=new ArrayList();list.add("刘备");list.add("曹操");list.add("孙权");//     ListIterator为List接口中特有的迭代器ListIterator,该迭代器继承IteratorListIterator it=list.listIterator();while(it.hasNext()) {System.out.print(it.next()+",");it.add("aaa"); //在迭代过程中,迭代器调用了添加方法,会将迭代器的指针向下移动一个单位。为了防止死循环//list.add("bbb");   //在迭代过程中,不能用集合对象对集合进行修改,会直接抛出异常( java.util.ConcurrentModificationException)}    //  刘备,曹操,孙权,System.out.println();System.out.println(list); //[刘备, aaa, 曹操, aaa, 孙权, aaa]ListIterator it2=list.listIterator();it2.next();      //最后一次使用list.add("aaa");  //这种写法可以System.out.println(list);  //[刘备, aaa, aaa, 曹操, aaa, 孙权, aaa]ListIterator it3=list.listIterator();list.add("aaa");   //这种写法不可以,因为在迭代过程中使用了集合对象改变了集合元素的个数it3.next();      //最后一次使用System.out.println(list);  //[刘备, aaa, aaa, 曹操, aaa, 孙权, aaa]}}

迭代器的工作原理和注意事项相关推荐

  1. 安泰:功率放大器的工作原理以及注意事项有哪些

    功率放大器的工作原理 利用三极管的电流控制作用或场效应管的电压控制作用将电源的功率转换为按照输入信号变化的电流.因为声音是不同振幅和不同频率的波,即交流信号电流,三极管的集电极电流永远是基极电流的β倍 ...

  2. javascript中this的工作原理以及注意事项

    在JavaScript中,this 的概念比较复杂.除了在面向对象编程中,this 还是随处可用的.这篇文章介绍了this 的工作原理,它会造成什么样的问题以及this 的相关例子. 要根据this  ...

  3. 气泡水位计的工作原理及注意事项

    遇到连续强暴风雨天气时,湖泊.水库水位线急速上涨,是否泄洪.何时泄洪难以抉择.而城市内高楼林立.车水马龙,强暴风雨来袭会导致城市内涝严重,威胁人类生命安全.面对洪灾等危急情况,水位计派上用场.水位计主 ...

  4. setData的工作原理和注意事项

    https://developers.weixin.qq.com/miniprogram/dev/framework/performance/tips.html https://developers. ...

  5. python学习Day14 带参装饰器、可迭代对象、迭代器对象、for 迭代器工作原理、枚举对象、生成器及生成表达式...

    复习 函数的嵌套定义:在函数内部定义另一个函数 闭包:被嵌套的函数 -- 1.外层通过形参给内层函数传参 -- 2.返回内部函数对象---->  延迟执行, 开放封闭原则: 功能可以拓展,但源代 ...

  6. 常用自动门感应器工作原理

    常用自动门感应器工作原理.特点及注意事项如下表: 感应器种类 工作原理 特点 注意事项 红外线感应器(主动) 检测发出的红外线遭遇人体后反射光变化 1.检测方向明确 2.不受热影响 3.响应速度快 4 ...

  7. java 工作池_Java线程池的工作原理,好处和注意事项

    线程池的工作原理 一个线程池管理了一组工作线程, 同时它还包括了一个用于放置等待执行 任务的任务队列(阻塞队列) . 一个线程池管理了一组工作线程, 同时它还包括了一个用于放置等待执行 任务的任务队列 ...

  8. 【转】加油站压力/真空阀(PV阀)的工作原理及安全注意事项

    压力/真空阀用于加油站油气回收时,维持一定罐压,以减少汽油油气挥发.压力/真空阀安装于油罐放空管顶端,可有效防止雨水,杂质及其他异物进入管线.阀内部设计有双向开启的阀门机构,阀门处于常闭状态,当油罐压 ...

  9. 布袋除尘器有关matlab编程,布袋除尘器工作原理结构图及使用注意事项

    布袋除尘器工作原理结构图及使用注意事项 布袋除尘器工作原理: 除尘器由灰斗.上箱体.中箱体.下箱体等部分组成,上.中.下箱体为分室结构.工作时, 含尘气体由进风道进入灰斗,粗尘粒直接落入灰斗底部,细尘 ...

最新文章

  1. sql2005中的简单分页方法
  2. python测试开发自学教程-自动化平台测试开发:Python测试开发实战_PDF电子书
  3. C++继承机制下的构造函数
  4. oracle层次查询中prior与自上而下、自下而上查询
  5. POSIX线程的同步
  6. 如何用命令行给mySQL添加用户
  7. 增加新分类daily——“每天学了啥?”
  8. 抛砖引玉,终于完成了自己的客户端校验提示Extender
  9. php 服务定位,服务定位器(Service Locator)
  10. CSS快速学习5:文本溢出和XHTML元素分类
  11. Spring 三层架构
  12. 【转】移动前端工作的那些事---前端制作篇之框架篇--jqMobi框架
  13. Python爬虫爬取中国电影票房排行榜
  14. BigDecimal加减乘除计算
  15. 修真院教学模式三大阶段之任务体系
  16. docker swarm英文文档学习-7-在集群中管理节点
  17. css页面一些动态效果展示
  18. vue-awesome-swiper 设置autoHeight,最后不满一页也占了一页
  19. iframe例子 (
  20. 数据结构与算法(educoder作业)

热门文章

  1. Android P禁止http明文传输
  2. 为什么玩卡的人都说必须要有一张四大行的信用卡?
  3. 启航:与冬日诀别,吻旷野苏醒
  4. cmsplus实战之仿[我扫网]之五:安装dedecms系统
  5. vue里面引用echarts制作攻击防御地图可视化视图
  6. 11. Coupled multilayer attentions for co-extraction of aspect and opinion terms阅读笔记
  7. 复选框的全选、全不选,选中所有分项,全选自动选中
  8. outlook2010设置msn的邮箱
  9. 响铃:Q1财报“意料之外”增长,百度短视频为何成了意外中的意外?
  10. [winphone][C#]MAC算法的实现