如何在 Scala 中用 Map 替换 Yield?
我怎样才能删除这个产量?我想使用地图而不是:
val cols = for(x <- 0 to 6) yield for(y <- 0 to 5) yield apply(x, y)
这可能吗?
谢谢!
此致, 约翰
how can I remove this yield's? I wanna use a map instead of:
val cols = for(x <- 0 to 6) yield for(y <- 0 to 5) yield apply(x, y)
Is this possible?
Thanks!
Best regards,
John
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这将非常简单:
UPD
地图可能会有变化。如果您想要没有嵌套结构的平面对象,最好使用
flatMap
而不是仅仅map
:或者只是在最后展平结果:
That would be pretty simple:
UPD
There may be variations in
map
s. If you want flat object without nested structure it is better to useflatMap
instead of justmap
:or just flatten result at the end:
当您有多个生成器时,最里面的生成器将转换为
map
,其余的将转换为flatMap
。 (在您的情况下,这些不是嵌套生成器。)以下示例可能会有所帮助:
When you have more than one generators, the innermost one translates to
map
, and rest translate toflatMap
. (In your case, those aren't nested generators.)The following examples may help: