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
.