当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Lazy.flat_map用法及代码示例


本文简要介绍ruby语言中 Enumerator::Lazy.flat_map 的用法。

用法

flat_map { |obj| block } → a_lazy_enumerator

返回一个新的惰性枚举器,其中包含为惰性枚举器中的每个元素运行一次block 的串联结果。

["foo", "bar"].lazy.flat_map {|i| i.each_char.lazy}.force
#=> ["f", "o", "o", "b", "a", "r"]

如果以下任一条件为真,则由 block 返回的值 x 被分解:

  • x 同时响应 each 和 force,这意味着 x 是一个惰性枚举器。

  • x 是一个数组或响应 to_ary。

否则,x 将按原样包含在返回值中。

[{a:1}, {b:2}].lazy.flat_map {|i| i}.force
#=> [{:a=>1}, {:b=>2}]

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Lazy.flat_map。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。