gpt4 book ai didi

dart - 在 Dart 中将 Iterable 转换为 Stream 的最佳/最短方法是什么?

转载 作者:行者123 更新时间:2023-12-02 15:10:50 25 4
gpt4 key购买 nike

我有一个 Iterable,我想将其转换为 Stream。执行此操作最有效/最短的代码量是什么?

例如:

Future convert(thing) {
return someAsyncOperation(thing);
}

Stream doStuff(Iterable things) {
return things
.map((t) async => await convert(t)) // this isn't exactly what I want
// because this returns the Future
// and not the value
.where((value) => value != null)
.toStream(); // this doesn't exist...
}

注意:iterable.toStream() 不存在,但我想要类似的东西。 :)

最佳答案

这是一个简单的例子:

var data = [1,2,3,4,5]; // some sample data
var stream = new Stream.fromIterable(data);

使用您的代码:

Future convert(thing) {
return someAsyncOperation(thing);
}

Stream doStuff(Iterable things) {
return new Stream.fromIterable(things
.map((t) async => await convert(t))
.where((value) => value != null));
}

关于dart - 在 Dart 中将 Iterable 转换为 Stream 的最佳/最短方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29376603/

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