gpt4 book ai didi

java - 如何将 Iterator 值收集到包含 50 个元素的列表中

转载 作者:行者123 更新时间:2023-11-30 06:21:43 24 4
gpt4 key购买 nike

我希望能够收集固定大小为 50 个元素的元素列表。这是我目前正在做的事情。如果可能的话我想使用 lambda。

List<Contact> contactList=getContacts();

Iterator<Contact> it=contactList.iterator();

List<Contact> batch=new ArrayList<>();
while(it.hasNext()) {
if(batch.size()<50) {
batch.add(it.next())
} else {
processBatch(batch);
}

//When iterator has less than 50 elements
if (!it.hasNext() && batch.size()<50) {
processBatch(batch);
}
}

最佳答案

你可以这样做:

 Iterable<String> iterable = () -> it;
contactList.addAll(StreamSupport.stream(iterable.spliterator(), false)
.limit(50)
.collect(Collectors.toList()));

关于java - 如何将 Iterator 值收集到包含 50 个元素的列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48014936/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com