首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从一个大小为100的Iterator<String>每次迭代10个元素

如何从一个大小为100的Iterator<String>每次迭代10个元素
EN

Stack Overflow用户
提问于 2021-02-19 14:28:47
回答 2查看 92关注 0票数 0

我有一个长度为100的字符串的迭代器。我想每次获取10个元素,并将它们传递给另一个函数。除了在循环中创建条件来计算10个元素之外,还有什么方法/方式吗?

EN

回答 2

Stack Overflow用户

发布于 2021-02-19 14:48:57

这取决于你需要对它们做什么,但问题的编写方式似乎是你想一次处理10个项目。

代码语言:javascript
运行
复制
Iterator<String> it = ... ;
List<String> nextBatch = nextBatchOf(it, 10);

// do something with nextBatch

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

代码语言:javascript
运行
复制
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;
}
票数 2
EN

Stack Overflow用户

发布于 2021-02-19 14:45:35

您可以使用standart Arrays API:

代码语言:javascript
运行
复制
    int step = 10;
    for (int i = 0; i < 10; i ++){
        anotherFunction(Arrays.copyOfRange(source, i * step, (i + 1) * step));
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66272725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档