[英]Loop in arraylist
这是我的ArrayList
:
{10, 20, 30,40, 50, 60, 70, 80, 90, 100....1000}
我想在单击按钮时循环我的结果。
我想要第一个Button
的点击中的前 5 个结果。
然后同样自动下5个结果。
有什么办法可以做到吗?
for(int i=0 ;i<5; i++) {
list = array.getJSONObject(i);
fr.add(list.get("contact"));
}
问题是我只得到前 5 个而不是下一个结果。
谢谢你的帮助。
如果您想在每次从索引 a 到索引 b 调用方法时删除数组列表中的前 N 个项目,
每次按下该按钮时ArrayList.removeRange(int fromIndex, int toIndex)
您都可以使用ArrayList.removeRange(int fromIndex, int toIndex)
(但不要重复此操作)
或轻松使用ArrayList.subList(start, end).clear();
为同样的任务!
从此列表中删除其索引介于 fromIndex(包含)和 toIndex(不包含)之间的所有元素。 将任何后续元素向左移动(减少它们的索引)。 此调用通过 (toIndex - fromIndex) 元素缩短列表。 (如果 toIndex==fromIndex,则此操作无效。)
阅读文档 > http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html#removeRange%28int,%20int%29
例子 :
public void removeFistNItemsFromList(){
for(int i=0 ;i<n; i++) {
// add your items or do what ever you want!
}
myArray.subList(0, 4).clear(); // here from 0 to 4th index items will be removed and list will be updated!
System.out.println("MyArrayListNow:"+myArray);
}
每次点击后输出:
好吧,你总是试图阅读前 5 个元素,因此问题。 您已阅读并从数组列表中删除元素的一种选择。 但是更好的方法是记录鼠标点击次数,在这种情况下,这是一个经典的分页问题,您可以获取接下来的 5 个元素,并且不会丢失 arraylist 中的数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.