繁体   English   中英

f#设置和映射相等

[英]f# set and map equality

对于F#不可变集和映射, set1 = set2如何工作? 他们会做出适当的集合/地图平等吗?

文件说:

基于二叉树的不可变集合,其中比较是F#结构比较函数,可能使用关键值的IComparable接口的实现。

它们基于二叉树,因此可能不会根据订单元素插入确切的形式? 如此天真地使用F#结构比较功能是行不通的......

我在文档中找不到任何相关内容。 我错过了吗?

是的,它显然会正常工作。

查看源代码 ,将覆盖Equals并使用GetEnumerator并检查它们以相同的顺序返回相同的元素。 这些应该按照这个问题的顺序排列,因为Set.toSeq的文档说:“set的元素的有序序列。”

Jon Harrop和Don Syme在“F#for Scientists”一书中也提到了这一点:

引用“F#for Scientists”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM