2015-08-18 80 views
0

此循环从列表的开始迭代到其最后一个索引,但我想从任何特定索引进行迭代。从特定索引迭代

for (Object ob : objlist) 
    { 
    //code 
    } 

我不想迭代使用list.size()。 我想从任何特定列表索引和向前遍历...

+0

简单的for循环? 'for(count = index; count Sid

+3

你需要使用'objList.size()'...否则你怎么知道何时停止迭代?你确实意识到你在你的问题中使用的迭代器可能使用'objList.size()',对吧? – Jashaszun

+0

@Jashaszun:我同意,我可以做到这一点,但问题是,我想要使用list [i]来调用任何方法,我的LOC大约在500行左右,所以很难编辑每一处,这就是为什么我我正在寻找任何替代品。 – SOP

回答

2

他们你可能要一个香草for循环:

for (int i = startIndex; i < objList.size(); i++) 
{ 
    Object ob = objList.get(i); 
    // code 
} 
+0

我忘了在帖子中提到我不想迭代使用list.size()。 – SOP

+0

@ShashiRanjan你可以编辑你的文章,包括你的意思吗? – Sid

+1

@ShashiRanjan什么时候开始厌恶'list.size()'? –

4

你可以有一个标准for循环:

for (int i = start; i < objList.size(); i++) 

或者您可以在子列表上使用增强的for循环,使用List's subList method

for (Object ob : objList.subList(start, objList.size())) 
2

无论出于何种类型T是在你的名单,

ListIterator<T> iterator = objList.listIterator(index); 
while(iterator.hasNext()) { 
    T item = iterator.next(); 
    // do stuff 
}