我想知道,你说那flatMap
是monad的bind
方法。bind 方法接受一个将 monad 包含的项目映射到另一个 monad 的函数。这是如何
option.flatMap(item => another option (f(item)))
给了我另一个内部的单子f(item)
。但是,应用于 List 意味着什么?通过简单的扩展,如果您将每个 List 项目映射到一个 (list) monad,您将获得整个列表列表。为什么bind
在应用于列表时会展平结果?
我想知道,你说那flatMap
是monad的bind
方法。bind 方法接受一个将 monad 包含的项目映射到另一个 monad 的函数。这是如何
option.flatMap(item => another option (f(item)))
给了我另一个内部的单子f(item)
。但是,应用于 List 意味着什么?通过简单的扩展,如果您将每个 List 项目映射到一个 (list) monad,您将获得整个列表列表。为什么bind
在应用于列表时会展平结果?