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?
Das Gegenteil von read
ist show
.
Prelude> show 3
"3"
Prelude> read $ show 3 :: Int
3
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.
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)