match
是处理 Option
的有效方法。然而,频繁使用可能会让人感到繁琐,尤其是在只有输入时才有效的操作中。在这些情况下,可以使用组合器以模块化的方式管理控制流。
Option
有一个内置方法 map()
,这是一个用于简单映射 Some -> Some
和 None -> None
的组合器。多个 map()
调用可以链式使用,从而提供更大的灵活性。
在下面的例子中,process()
函数以简洁的方式替代了之前的所有函数。
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
闭包、Option
、Option::map()