mad*_*do7 1 primes haskell functional-programming
我有这个Haskell脚本:
prime :: Integer -> Bool
prime 1 = False
prime n = [ x | x <- [2..n-1], n `mod` x == 0 ] == []
Run Code Online (Sandbox Code Playgroud)
什么是第一次x在最后一行代表什么?为什么我可以用"String"替换它,整个功能仍然有效?
|列表推导之前的部分是一个表达式,用于生成结果列表的每个元素.
在这种情况下,该函数仅关注列表推导是否导致空列表,因此列表的元素无关紧要.你可以把(),x,1或实现任何类型的任何值Eq出现.如果你用null而不是== []检查空虚,它甚至可能是任何东西undefined.