我知道你可以用read将字符串转换为数字:
Prelude> read "3" :: Int
3
Prelude> read "3" :: Double
3.0
但是如何获取Int值的String表示呢?
我知道你可以用read将字符串转换为数字:
Prelude> read "3" :: Int
3
Prelude> read "3" :: Double
3.0
但是如何获取Int值的String表示呢?
下面是查克回答的一个例子:
myIntToStr :: Int -> String
myIntToStr x
| x < 3 = show x ++ " is less than three"
| otherwise = "normal"
注意,如果没有show,第三行将无法编译。
人只是从Haskell并试图打印Int,使用:
module Lib
( someFunc
) where
someFunc :: IO ()
x = 123
someFunc = putStrLn (show x)
你可以用show:
show 3
我想补充的是show的类型签名如下:
show :: a -> String
可以将很多值转换为字符串,而不仅仅是Int类型。
例如:
show [1,2,3]
这里有一个参考:
https://hackage.haskell.org/package/base-4.14.1.0/docs/GHC-Show.html#v:show