Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1449911
  • 博文数量: 254
  • 博客积分: 8696
  • 博客等级: 中将
  • 技术积分: 2961
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-03 16:46
文章分类

全部博文(254)

文章存档

2015年(4)

2014年(18)

2013年(16)

2012年(8)

2011年(25)

2010年(2)

2009年(74)

2008年(107)

分类: Java

2008-07-08 23:19:13

在ListIterator中,由nextIndex变量来指示下一个next()要读取的元素位置,previousIndex来指示下一个previous()要读取的元素位置,nextIndex和previousIndex有关系:

nextIndex   =   previousIndex   +   1

假设当前nextIndex   =   i,   previousIndex   =   i   -   1,   当你调用next()时,返回第i个元素,此时nextIndex   =   i   +   1,   previousIndex   =   i.   当你立即调用previous()时,很显然会返回第i个元素,然后nextIndex   =   i,   previousIndex   =   i   -   1;  

所以就出现了你描述的问题,这个问题只出现在由next()转入previous()或previous()转入next()的时候.当连续调用previous()或next()的时候是没有问题的.
(上述出自:)
 
ListIterator的next()和previous()交替会使指不会发生改变,个人暂时还没有找到好的解决方法:
前面使用过next(),则使用两次previous()可以取得前一个,如果只使用一次,值不会发生改变。
阅读(5796) | 评论(0) | 转发(0) |
0

上一篇:Mysql中文乱码

下一篇:java中的时间比较

给主人留下些什么吧!~~