我有一个ArrayList
,我想开始从索引100到最后遍历它。我怎么做?如何开始从集合索引迭代ArrayList?
回答
您可以随时利用subList(int, int)
方法
list.subList(100,list.size()).iterator();
有很多方法可以做到这一点。在这个例子中,我假设你的列表保存了整数。
可以使用的ListIterator
ListIterator<Integer> it = list.listIterator(100); while (it.hasNext()) { System.out.println(it.next()); }
或
for
(保留迭代器范围的内环路)for (ListIterator<Integer> lit = list.listIterator(100); lit.hasNext();) { System.out.println(lit.next()); }
或正常的循环,但来自
i=100
for (int i=100; i<list.size(); i++){ System.out.println(list.get(i)); }
启动
或只是创建子列表,并遍历它就像你通常做
for (Integer i : list.subList(100, list.size())){ System.out.println(i); }
为什么'while'在第一个例子中? 'for'会使它保持适当的范围。 –
@MarkoTopolnik这真的很好,但我不想将OP与不必要的信息混淆。但也许你是对的,会加上它来回答。 – Pshemo
尝试这样来遍历一个范围:
for(int i=100; i< myArrayLst.size(); i++){
System.out.println(myLst.get(i));
}
使用ListIterator
。和阅读API文档,谢谢。
ListIterator<YourType> iter = list.listIterator(start);
对于子列表,*最适当的*方法得到增强! –
@MarkoTopolnik不,这将创建更多的对象和间接*。使用迭代器没什么问题 - “增强”仅仅是使用迭代器的捷径。 –
我想我的讽刺在你身上失去了 –
ListIterator
使用
ListIterator<Type> iter = list.listIterator(start);
- 1. 如何从特定索引开始迭代数组?
- 2. 迭代Python列表的开始索引
- 3. 从特定索引开始迭代所有Python列表值
- 4. 分片集合的索引需要从分片键开始?
- 5. 如何开始迭代而不是从一开始
- 6. 如何通过Android ArrayList迭代并获得索引
- 7. 从特定索引迭代
- 8. Scala初始化Java迭代集合
- 9. 如何从一个ArrayList迭代
- 10. STL迭代::开始()
- 11. HashSet的随机开始索引迭代器
- 12. 如何迭代hasmap中的ArrayList并再次迭代ArrayList
- 13. 如何迭代的ArrayList
- 14. 通过迭代器获取集合元素的“索引”
- 15. backbone.js迭代集合
- 16. Java迭代集合
- 17. vba - 迭代集合
- 18. JQuery - 集合迭代
- 19. 迭代集合的子集
- 20. 迭代集合的子集
- 21. 性能:从零开始创建集合还是迭代并添加缺失? (JAVA)
- 22. 如何迭代C++中的集合?
- 23. 如何迭代密钥对集合?
- 24. 如何迭代一系列Backbone集合?
- 25. 如何迭代通过更改集合
- 26. 如何迭代一个有序集合?
- 27. 如何迭代Backbone Firebase集合?
- 28. 如何在JavaScript中迭代Java集合
- 29. 如何迭代Google App引擎中的JPA集合
- 30. 索引集合
'对(INT I = 100; I
RamonBoza
_我该怎么做?_一个好的起点是学习for循环如何工作以及如何从给定索引的ArrayList中读取值。 – BackSlash
为什么倒票?这是一个有效的问题 –