如何在Haskell中实现这个功能?



我在Haskell中定义了如下数据类型,

data Numbers = "1" | "2" | "3" | "4" | "5"

我想写一个函数,如果给定一个数字,它会给我下一个数字,除非我给它4(我不希望它给我5)。

next :: Numbers -> Numbers
next number = .....

我有点不知道如何才能做到这一点。有什么建议吗?

您可能正在寻找模式匹配语法。

如果您想要更高级的解决方案,请查看deriving Enumsucc方法

最新更新