如何限制迭代器的结果超过我的列表?
try {
ArrayList<CalanderQueryOutput> results = new ArrayList<CalanderQueryOutput>();
List<?> eventsToday = (List<?>) filter.filter(calendar.getComponents(Component.VEVENT));
CalanderQueryOutput caldavOutput = new CalanderQueryOutput();
for (Iterator<?> i = eventsToday.iterator(); i.hasNext();) {
}
results.add(caldavOutput);
}
我想列出最多十个结果
答案 0 :(得分:1)
当计数器达到某个值时,您可以添加一个计数器和break;
循环。
循环之前:
int counter = 1;
在循环中:
if(counter >= 10)
break;
/* loop code */
counter++;
答案 1 :(得分:1)
这样做:
...
for (Object event : eventsToday.subList(0, Math.min(9, eventsToday.size() - 1))) {
// do something with "event"
}
...
答案 2 :(得分:0)
在循环中,使用计数器并按如下方式检查:
if(counter < 10) results.add(caldavOutput);
.....
......
counter++;