在Haskell中,可以通过关键字data
来定义自定义的数据类型。定义数据类型的语法如下:
data TypeName = Constructor1 Type1 | Constructor2 Type2 | ...
其中,TypeName
是新数据类型的名称,Constructor1
, Constructor2
等是该数据类型可能的构造函数,Type1
, Type2
等是构造函数的参数类型。
例如,我们可以定义一个表示颜色的数据类型:
data Color = Red | Green | Blue
然后,我们可以使用这个数据类型来创建新的值:
redColor = Red
greenColor = Green
blueColor = Blue
我们还可以定义一个接受Color
类型参数的函数,例如:
printColor :: Color -> String
printColor Red = "Red"
printColor Green = "Green"
printColor Blue = "Blue"
这样,我们就可以使用这个函数来打印颜色的名称:
main = do
putStrLn (printColor redColor)
putStrLn (printColor greenColor)
putStrLn (printColor blueColor)
以上是Haskell中自定义数据类型的简单用法,你可以根据需求自定义更复杂的数据类型,并在程序中使用它们。