用迭代器iterator遍历list中第一条数据和最后一条数据 并判断

如题所述

Iterator iterator = list.iterator();

Object first = null;

Object last = null;

int count = 0;

while(iterator.hasNext()) {

count++;

Object temp = iterator.next();

if(count==1) {

first = temp;

}

else {

if(!iterator.hasNext()) {//最后一个元素

last = temp;

}

}

}

之后对first、last处理,之后的代码用户可根据自己的需求进行处理。

扩展资料:

迭代器是一种模式、详细可见其设计模式,可以使得序列类型的数据结构的遍历行为与被遍历的对象分离,即我们无需关心该序列的底层结构是什么样子的。只要拿到这个对象,使用迭代器就可以遍历这个对象的内部。

Iterable:实现这个接口的集合对象支持迭代,是可以迭代的。实现了这个可以配合foreach使用

Iterator:迭代器,提供迭代机制的对象,具体如何迭代是这个Iterator接口规范的。

Iterator接口包含三个方法:hasNext,next,remove。

参考资料来源:百度百科-迭代器

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-15
Iterator iterator = list.iterator();
Object first = null;
Object last = null;
int count = 0;
while(iterator.hasNext()) {
count++;
Object temp = iterator.next();
if(count==1) {
first = temp;
}
else {
if(!iterator.hasNext()) {//最后一个元素
last = temp;
}
}
}
之后对first、last处理,但是你没说明要处理什么,所以也不好写本回答被提问者采纳
第2个回答  2011-11-21
list.get(0);
list.get(list.size()-1);
从来不建议用iterator来读List,除非是为了偷懒foreach,不然别用这个烂玩意。直接当数组用,多方便啊。
相似回答