我有一组可用列表形式提供的常量值。使用这些值,我必须创建一个键值对对象,并且必须将此对象添加到列表中。我想在 JAVA 8 中使用 Stream API 来实现这一点。下面是使用 for 循环的示例实现
for (int i=0; i<length; i+=2){
list.add(new sampleObject(constant[i],constant[i+1]);
}
这可以使用 Stream 缩减操作来实现吗?
最佳答案
使用 IntStream.limit()
生成无限 IntStream
的链 IntStream.iterate()
使其有限:
List<sampleObject> list =
IntStream.iterate(0, i -> i + 2)
.limit(Math.ceil(length / 2D))
.mapToObj(i -> new sampleObject(constant[i], constant[i+1]))
.collect(Collectors.toList());
关于java - 使用 Stream API 创建对象初始化循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49456080/