我很困惑。我试过用print
,但我知道有人申请putStrLn
。它们之间的真正区别是什么?
print $ function
putStrLn $ function
该函数putStrLn
接受 aString
并将其显示到屏幕上,后跟一个换行符(放置一个字符串,后跟一个新的L i n e)。
因为它只适用于String
s,所以一个常见的习惯用法是获取任何对象,将其转换为 a String
,然后应用putStrLn
显示它。将对象转换为 a 的通用方法String
是使用show
函数,因此您的代码最终会包含很多
putStrLn (show 1)
putStrLn (show [1, 2, 3])
putStrLn (show (Just 42))
String
一旦你注意到这一点,定义一个转换为 a并一步显示字符串的函数就不是很大的延伸
print x = putStrLn (show x)
这正是print
功能。