[string] Haskell : Int를 문자열로 변환

나는 다음 String을 사용하여 숫자를 숫자 로 변환 할 수 있다는 것을 알고 있습니다 read.

Prelude> read "3" :: Int
3
Prelude> read "3" :: Double 
3.0

그러나 가치 의 String표현을 어떻게 얻 Int습니까?



답변

의 반대는 read입니다 show.

Prelude> show 3
"3"

Prelude> read $ show 3 :: Int
3


답변

척의 답변을 기반으로 한 예 :

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)


답변