我有这个Haskell脚本:
prime :: Integer -> Bool
prime 1 = False
prime n = [ x | x <- [2..n-1], n `mod` x == 0 ] == []最后一行中的第一个x代表什么?为什么我可以用"String“替换它,而整个函数仍然有效?
发布于 2013-04-23 20:53:28
在列表理解中,|之前的部分是一个表达式,它将用于生成结果列表的每个元素。
在这种情况下,该函数只关心列表理解是否会产生一个空列表,所以列表的元素并不重要。您可以将()、x、1或实现Eq的任何类型的任何值放在那里。如果您使用null而不是== []来检查是否为空,那么它可能是任何东西,甚至是undefined。
https://stackoverflow.com/questions/16169234
复制相似问题