java.util.ListIterator<E> 源码分析(JDK1.7)

---------------------------------------------------------------------------------

java.util.ListIterator<E>是一个接口,它的定义如下:

 package java.util;

 public interface ListIterator<E> extends Iterator<E> {
// Operations }

(1)java.util.ListIterator<E>列表集合迭代器,允许按任一方向遍历列表集合、迭代期间可以修改列表集合元素,并获得迭代器在列表中的当前位置

---------------------------------------------------------------------------------

下面来看看java.util.ListIterator<E>接口中具体有哪些方法:

void add(E e) 将指定的元素插入列表
boolean hasNext() 以正向遍历列表时,如果列表迭代器有多个元素,则返回true
boolean hasPrevious() 如果以逆向遍历列表集合,列表迭代器有多个元素,则返回true
E next() 返回列表中的下一个元素
int nextIndex() 返回对next的后续调用所返回的元素的索引
E previous() 返回列表集合中前一个元素
int previousIndex() 返回对previous的后续调用所返回元素的索引
void remove() 从列表中移除由next或previous返回的最后一个元素
void set(E e) 用指定元素替换next或者previous返回的最后一个元素

---------------------------------------------------------------------------------

java.util.ListIterator<E>接口源代码如下:

 public interface ListIterator<E> extends Iterator<E> {
// Query Operations
boolean hasNext(); E next(); boolean hasPrevious(); E previous(); int nextIndex(); int previousIndex(); // Modification Operations
void remove(); void set(E e); void add(E e);
}

JDK源码(1.7) -- java.util.ListIterator<E>的更多相关文章

  1. JDK源码(1.7) -- java.util.AbstractList<E>

    java.util.AbstractList<E> 源码分析(JDK1.7) ------------------------------------------------------- ...

  2. JDK源码(1.7) -- java.util.List<E>

    java.util.List<E> 源码分析(JDK1.7) --------------------------------------------------------------- ...

  3. JDK源码(1.7) -- java.util.Collection<E>

     java.util.Collection<E> 源码分析(JDK1.7) -------------------------------------------------------- ...

  4. JDK源码学习之 java.util.concurrent.automic包

    一.概述 Java从JDK1.5开始提供了java.util.concurrent.atomic包,方便程序员在多线程环境下无锁的进行原子操作.原子变量的底层使用了处理器提供的原子指令,但是不同的CP ...

  5. JDK源码(1.7) -- java.util.Deque<E>

    java.util.Deque<E> 源码分析(JDK1.7) -------------------------------------------------------------- ...

  6. JDK源码(1.7) -- java.util.Queue<E>

    java.util.Queue<E> 源码分析(JDK1.7) -------------------------------------------------------------- ...

  7. JDK源码(1.7) -- java.util.Arrays

    java.util.Arrays 源码分析 ------------------------------------------------------------------------------ ...

  8. JDK源码(1.7) -- java.util.Iterator<E>

    java.util.Iterator<E> 源码分析(JDK1.7) ----------------------------------------------------------- ...

  9. JDK源码(1.7) -- java.util.AbstractCollection<E>

    java.util.AbstractCollection<E> 源码分析(JDK1.7) ------------------------------------------------- ...

随机推荐

  1. vista风格的cms企业html后台管理系统模板——后台

    链接:http://pan.baidu.com/s/1c1Cv99e 密码:20yz

  2. Mac nginx 配置

    nginx 安装: 在苹果系统下如果要安装nginx,首先要安装brew.安装brew可以查看网站:https://brew.sh: 一条命令即可搞定:/usr/bin/ruby -e "$ ...

  3. linux内存分配方法总结【转】

    转自:http://www.bkjia.com/Linuxjc/443717.html 内存映射结构: 1.32位地址线寻址4G的内存空间,其中0-3G为用户程序所独有,3G-4G为内核占有. 2.s ...

  4. sqlite3在Linux下的安装和使用

    自我补充:ubuntu在线安装sqlite3数据库的方法:  系统平台:ubuntu12.04   在ubuntu里面直接使用命令:sudo apt-get install sqlite3 ,出现: ...

  5. ubuntu新机安装工具

    ubuntu新机安装工具:1,sudo apt-get install ssh vim2, 设置root密码,以备不时之需: 执行:sudo passwd root 然后输入当前三次密码,第一次是当前 ...

  6. 三十分钟理解计算图上的微积分:Backpropagation,反向微分

    神经网络的训练算法,目前基本上是以Backpropagation (BP) 反向传播为主(加上一些变化),NN的训练是在1986年被提出,但实际上,BP 已经在不同领域中被重复发明了数十次了(参见 G ...

  7. scala学习7--class、object、trait

    scala语言中没有static成员存在,但是scala允许以某种方式去使用static成员这个就是伴生机制,所谓伴生,就是在语言层面上,把static成员和非static成员用不同的表达方式,cla ...

  8. 【58沈剑架构系列】主从DB与cache一致性

    本文主要讨论这么几个问题: (1)数据库主从延时为何会导致缓存数据不一致 (2)优化思路与方案 一.需求缘起 上一篇<缓存架构设计细节二三事>中有一个小优化点,在只有主库时,通过“串行化” ...

  9. 【LOJ】#2174. 「FJOI2016」神秘数

    题解 这道题的结论很显然= = 就是暴力求的话,把一个区间的数排一下序,如果当前这个数大于前面所有数的前缀和+1,那么前缀和+1即我们所求的答案 那么我们设置一个当前答案(初始为1),在主席树上求出来 ...

  10. Robot Framework自动化测试的应用

    Robot Framework自动化测试的应用(一) 最近尝试用Robot Framework代替之前全部采用python实现测试case,开始对Robot Framework进行些了解学习. 1. ...