【发布时间】:2011-05-06 21:33:10
【问题描述】:
.NET BCL 是否有不可变的 Set 类型?我正在使用 C# 的功能方言进行编程,并且想做类似的事情
new Set.UnionWith(A).UnionWith(B).UnionWith(C)
但我能找到的最好的是HashSet.UnionWith,这需要以下调用序列:
HashSet composite = new HashSet();
composite.UnionWith(A);
composite.UnionWith(B);
composite.UnionWith(C);
这种用法高度不透明,难以优化和理解。有没有更好的方法可以在不编写自定义功能集类型的情况下做到这一点?
【问题讨论】:
标签: c# set immutability functional-programming