作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想通过调用方法 x 次来创建一个列表(或一般的集合)。在 Python 中它会是这样的。
self.generated = [self.generate() for _ in range(length)]
我尝试在 JDK 8 中编写类似的代码。
this.generated = IntStream.range(0, length)
.mapToObj(n -> this.generate())
.collect(Collectors.toList());
它有效,但不知何故感觉不太好。有没有更合适的方法?
最佳答案
我不是 Python 开发人员,所以我可能误解了您的示例,但从 Java 示例来看,您可能正在寻找类似
Stream.generate(this::generate).limit(length).collect(Collectors.toList());
但是作为Brian Goetz mentioned你的方法
IntStream.range(0, length).mapToObj(i->...)
将在并行时表现得更好。
关于java - 如何在 Java 8 中生成给定长度的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23748612/
我是一名优秀的程序员,十分优秀!