F#元组模式匹配问题
有没有办法在F#中进行模式匹配,以便检查两个元素元组中的两个元素是否相等。我对F#非常陌生,对模式匹配的整体概念也非常陌生。我在想一些关于F#元组模式匹配问题,f#,design-patterns,matching,tuples,F#,Design Patterns,Matching,Tuples,有没有办法在F#中进行模式匹配,以便检查两个元素元组中的两个元素是否相等。我对F#非常陌生,对模式匹配的整体概念也非常陌生。我在想一些关于 let rec funct = function |(xs, xs) -> 0 etc. etc. etc. 但我想那太容易了哈。有什么建议吗?或者有没有办法做到这一点?谢谢你们的帮助,你们真是帮了大忙 match e with | x,y when x = y -> ... ... Brian的回答是正确的,但由于
let rec funct = function
|(xs, xs) -> 0
etc. etc. etc.
但我想那太容易了哈。有什么建议吗?或者有没有办法做到这一点?谢谢你们的帮助,你们真是帮了大忙
match e with
| x,y when x = y -> ...
...
Brian的回答是正确的,但由于您也询问了其他方法,我将添加一个替代方法-我通常不使用
match
来处理元组,因为简单的分解总是会成功的(除非您使用一些复杂的模式或时
)。在编写函数时,我可能会这样写:
let funct (x, y) =
if x = y then ...
else ...
(当然,这取决于上下文-如果
可能适合小功能)啊,when关键字…谢谢!