說我有一個整數l = [1,2]
迭代印刷在列表中的每個整數
,我想打印到stdout
的名單。
做print l
產生[1,2]
說我想要打印的清單沒有括號
map print l
產生
No instance for (Show (IO())) arising from a use of `print'
Possible fix: add an instance declaration for (Show (IO()))
In a stmt of an interactive GHCi command: print it
`:T打印
print :: Show a => a -> IO()
因此,雖然我認爲這將工作我w提前嘗試:
map putStr $ map show l
因爲我懷疑從整數到字符串的類型不匹配是怪罪。這產生了與上面相同的錯誤信息。
我意識到我可以做一些事情,比如把列表連接成一個字符串,但是我想盡量避免這種情況。
發生了什麼事?如何在不從List的元素構造字符串的情況下做到這一點?
這個答案教會了我更多關於Haskell,然後我以前做的所有擺弄。謝謝 –
沒問題 - 我很高興能幫上忙。 –