我不明白如何通过需要一个值得山的coroutine。
假设我具有以下功能:
fun <T> iterate(iterable: Iterable<T>) {
for (obj in iterable) {
// do something..
}
}
我想通过一个Coroutine:
iterate( ?? {
for (obj in objects) {
yield(transform(obj))
}
})
我应该放置什么而不是??
才能使用?我尝试了buildIterator
和buildSequence
,但它们都没有工作。
您可以使用asIterable()
:
val seq = buildSequence {
for (i in 1..5) {
yield(i)
}
}.asIterable()
iterate(seq)