我才刚开始学Haskell。我对C,C++,Java和PHP有丰富的经验。不过,我仍然不知道如何在Haskell中打印0到10之间的数字,而没有在不同的行上有putStrLn。
在Java中,我们会这样做:
for(int i=0; i<=10; i++)
System.out.println(i);但是,Haskell似乎不支持这一点。我怎样才能产生同样的结果?
发布于 2014-06-20 16:46:09
Haskell不像其他语言那样有for循环,但是它有for each循环:
所以,我们只对每个数字0到10做print:
import Control.Monad -- forM_ is not part of the syntax itself, but defined as a function
main :: IO () -- main does IO
main = do
forM_ [0..10] $ \n -> -- for each number 0 to 10
print n -- print the number或更短:
import Control.Monad
main :: IO ()
main = forM_ [0..10] printhttps://stackoverflow.com/questions/24331963
复制相似问题