向你学习 Haskell http://learnyouahaskell.com/making-our-own-types-and-typeclasses讨论以下数据类型:
data Day = Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday
deriving (Eq, Ord, Show, Read, Bounded, Enum)
本书演示了如何使用read
将字符串解析为Day
type.
$ read "Saturday" :: Day
Saturday
但是,我可以传入非日值,从而导致异常。
$ read "foo" :: Day
*** Exception: Prelude.read: no parse
什么是类型安全的使用方式read
在上面的例子中?
除了旧的标准功能外reads
@JonPurdy 提到的,还有最近添加的
Text.Read.readMaybe :: Read a => String -> Maybe a
当字符串只包含一个要解析的值时,使用起来更简单。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)