【发布时间】:2013-11-25 03:41:10
【问题描述】:
在 Ceylon 中是否有一种简单的方法来创建无限迭代,通过调用相同的给定无参数函数来生成每个元素?换句话说,语言模块是否提供与 Java 8 的 Stream.generate(Supplier<T>) 等效的功能?
【问题讨论】:
标签: ceylon
在 Ceylon 中是否有一种简单的方法来创建无限迭代,通过调用相同的给定无参数函数来生成每个元素?换句话说,语言模块是否提供与 Java 8 的 Stream.generate(Supplier<T>) 等效的功能?
【问题讨论】:
标签: ceylon
这是我想出的:
{Value+} generator<Value>(Value() generate) => {generate()}.cycled;
这是因为 {generate()} 是懒惰的。
【讨论】:
不,这实际上并不存在,我认为“锡兰”的方式是这样的:
class Generator<T>(T func()) satisfies Iterable<T> {
object iter satisfies Iterator<T> {
next() => func();
}
iterator() => iter;
}
您也可以在以下位置提出请求:the language module
【讨论】: