2011-12-05 18 views

回答

28

使用分號:

word 0 = "Zero"; word 1 = "One"; word 2 = "Two" 
10

你可以使用這樣的事情:

word = (!!) ["Zero", "One", "Two"] 

我不知道這是否會比模式匹配更慢,但。

29

這是一個奇怪的要求,寫一個函數在一行。無論如何,case也可能有幫助。

word x = case x of {0 -> "Zero"; 1 -> "One"; 2 -> "Two"} 
3

另一種可能性:

data Words = Zero | One | Two deriving (Show, Enum) 

word = show . (toEnum :: Int -> Words) 

,或者,如果你希望它比Int其他類型的工作,

word = show . ((toEnum.fromIntegral) :: Integral a => a->Words)