之间的区别是什么?
(v@(x:xs)) and (v:(x:xs)
示例功能:
list [] = []
list (v@(x:xs)) = v : list xs
如果我将(v @(x:xs))替换为(v:(x:xs)),该功能将无法正常工作。
v@(x:xs)
将一个或多个与x
头部,xs
尾部和v
整个列表绑定的列表匹配。
v:(x:xs)
将具有两个或多个元素的列表与v
第一个,x
第二个和xs
其余元素绑定在一起。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句