0

如何限制迭代器对我的列表的结果?

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);
}

我只想列出最多十个结果

4

3 回答 3

1

break;当计数器达到某个值时,您可以添加一个计数器和循环。

循环前:

int counter = 1;

在循环:

if(counter >= 10)
   break;

/* loop code */

counter++;
于 2012-06-04T07:29:34.443 回答
1

只需这样做:

...
for (Object event : eventsToday.subList(0, Math.min(9, eventsToday.size() - 1))) {
    // do something with "event"
}
...
于 2012-06-05T00:38:08.240 回答
0

在循环中,使用计数器并像这样检查它:

if(counter < 10) results.add(caldavOutput);
.....
......
counter++;
于 2012-06-04T07:28:00.207 回答