sách gpt4 ai đã đi

Các mẫu F# khớp với các quy tắc tuple sẽ không bao giờ khớp

In lại 作者:行者123 更新时间:2023-12-04 14:55:34 28 4
mua khóa gpt4 Nike

首先,我是 f# 的新手,所以也许答案很明显,但我没有看到。所以我有一些带有 id 和值的元组。我知道我正在寻找的 id,我想从我传入的三个元组中选择正确的元组。我打算用两个 match 语句来做到这一点,一个嵌套在另一个中,但每件事都与第一条规则。对于此示例,我将其缩减为两个元组,因为这显示了我的问题。编译器发出“规则永远不会匹配”的警告,但我不明白为什么。

let selectTuple tupleId tuple1 tuple2 = 
match tuple1 with
| (tupleId, _) -> tuple1
| _ -> tuple2

任何关于更好的方法的帮助或建议将不胜感激。

1 Câu trả lời

sử dụng khi条款:

let selectTuple tupleId tuple1 tuple2 = 
match tuple1 with
| (x, _) when x = tupleId -> tuple1
| _ -> tuple2

这里发生的事情是,当您使用 tupleId 时作为匹配案例的一部分,您引入了一个名为 tupleId 的新值。您可以在火柴盒右侧引用。这会影响您的函数参数。

由于您实际上只为元组的第一个元素命名,因此任何元组都将匹配第一个案例,这就是您在第二个案例中获得“规则将不匹配”警告的方式。

关于永远不会匹配与元组规则匹配的 F# 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41859796/

28 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com