解释Read / Show如何工作?

时间:2012-06-12 03:30:30

标签: haskell

有人可以解释一下Read / Show是如何工作的......我找不到任何关于它的教程。我一直在搜索糟糕的haskell文档4天了,我感到非常沮丧。

今晚有人可以成为救世主并帮我将int转换为字符串,以便我可以反转字符串值。

谢谢。

编辑..添加我当前的代码..

mult_add d s = d + 10*s

form_number_back d = foldr mult_add 0 d

form_number_front d = reverse[(show $ read (form_number_back(d)))]

3 个答案:

答案 0 :(得分:4)

写出类型会有所帮助。

 mult_add :: Int -> Int -> Int
 form_number_back :: [Int] -> Int
 read :: [Char] -> Int
 show :: Int -> [Char]
 reverse :: [a] -> [a]

答案 1 :(得分:2)

read将字符串转换为Int(在您的情况下),而show将Int转换为字符串。

看起来form_number_back会返回Int,因此您只需要show,而不是read

此外,show会返回一个字符串(在您的情况下为[Char]),因此无需在结果周围添加另一个[...]

答案 2 :(得分:1)

你的问题似乎是你和其他一些人之间正在进行的对话的一部分 - 这对我来说很好 - 但是如果没有其余的背景而试图回答你的问题很难超过建议你看到学习你关于该主题的Haskell教程:

http://learnyouahaskell.com/types-and-typeclasses