2015-08-18 82 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 
}