我很迷惑。我尝试使用print
,但我知道人们会使用putStrLn
。它们之间的真正区别是什么?
print $ function
putStrLn $ function
最佳答案
函数putStrLn
接受一个String
并显示在屏幕上,后跟换行符(将放入 Str ,然后是新的 L i n e)。
因为它仅适用于String
,所以常见的惯用法是将任何对象转换为String
,然后应用putStrLn
进行显示。将对象转换为String
的通用方法是使用show
函数,因此您的代码最终会产生很多
putStrLn (show 1)
putStrLn (show [1, 2, 3])
putStrLn (show (Just 42))
一旦注意到这一点,定义一个转换为
String
并一步显示字符串的函数并不是一个很大的任务print x = putStrLn (show x)
正是
print
函数是什么。