wake-up-neo.net

Haskell: Konvertierung von Int in String

Ich weiß, dass Sie eine String mit read in eine Zahl konvertieren können:

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

Aber wie greift man die String-Darstellung eines Int-Wertes?

167
Squirrelsama

Das Gegenteil von read ist show.

Prelude> show 3
"3"

Prelude> read $ show 3 :: Int
3
248
Chuck

Ein Beispiel basierend auf Chucks Antwort:

myIntToStr :: Int -> String
myIntToStr x
    | x < 3     = show x ++ " is less than three"
    | otherwise = "normal"

Beachten Sie, dass die dritte Zeile ohne show nicht kompiliert werden kann.

3
prasad_

Alle, die gerade mit Haskell anfangen und versuchen, ein Int zu drucken, verwenden:

module Lib
    ( someFunc
    ) where

someFunc :: IO ()
x = 123
someFunc = putStrLn (show x)
0
Arlind