迭代器Iterator | 迭代器ListIterator 是继承了Iterator接口的 | 增强for循环 | Enumeration枚举法 | |
调用方式 | Collection 调用方法 iterator返回迭代器Iterator | 用List中特有的方法调用方法listIterator返回迭代器Listerator | 直接书写 | |
格式 | Collection c=new ArrayList( ); Iterator iterator=c.iterator; | List list=new ArrayList( ); ListIterator listerator=list.listIterator; | Enumeration elements=vector.elements(); | |
迭代器使用方式 | while(iterator.hasNext( )){ iterator.next( ) } | while(listerator.hasNext){ listerator.next( ) } | for(容器内类型 临时变量: 容器){ 内部可以直接使用临时变量访问数据 } | while(elements.hasMoreElements()){ String thisName=(String)elements.nextElement(); |
注意事项以及区别 | 不可以对集合中元素做修改 因为集合中元素发生改变而迭代器并不知道会产生并发性修改异常 | 可以使用迭代器ListIterator中的方法对集中元素进行修改,虽然迭代器不发生变化但是是使用迭代器去完成的动作迭代器知道 | 1;不可以对集合中的元素进行修改,如果添加会造成并发性修改异常 2,底层封装了迭代器的操作。 3,在使用增强for的时候,请保证迭代目标不为null。 | |
应用情况 | 集合 | 集合 | 容器,:集合和数组,一般多用增强for |
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |