2011-02-02 95 views
2

有没有办法在F#中模式匹配,以便它将检查两个元素元组中的两个元素是否相等。我对F#非常陌生,对于模式匹配的整体概念也是一个新概念。我在想...F#元组模式匹配问题

let rec funct = function 
    |(xs, xs) -> 0 
    etc. etc. etc. 

但我想这会太容易了吧。有什么建议么?或者甚至有办法做到这一点?感谢您的帮助,你们非常有帮助!

回答

2

布赖恩的答案是正确的,但既然你还问其他的方式,我将添加一个选择 - 我不经常使用match与元组,因为简单的工作分解将始终成功(除非您使用一些复杂的模式或when)。当编写一个函数,我可能会写:

let funct (x, y) = 
    if x = y then ... 
    else ... 

(当然,这取决于上下文 - 在if可能是很好的小功能)