首页 > 解决方案 > 如何每次从迭代器迭代 10 个元素大小 100

问题描述

我有一个大小为 100 的字符串的迭代器。我想每次获取 10 个元素并将它们传递给另一个函数。除了在循环内设置条件来计算 10 个元素之外,还有其他方法/方式吗?

标签: javaloopsiterator

解决方案


这取决于您需要对它们做什么,但问题的编写方式似乎您希望一次处理十个项目。

Iterator<String> it = ... ;
List<String> nextBatch = nextBatchOf(it, 10);

// do something with nextBatch

以及获取下一批元素的方法

List<String> nextBatchOf(Iterator<String> it, int size) {
    List<String> batch = new ArrayList<>();
    for (int i = 0; i < size && it.hasNext(); i++) {
        batch.add(it.next());
    }
    return batch;
}

推荐阅读