我想要一个具有a)协方差和b)唯一性的不可变集合。我的收藏数量永远不会很大,而且我对快速contains
的关注也越来越少。
目前,我只是在uniquePrepend
上使用自己的List
扩展方法,但这并不令人满意,因为内部没有强制执行唯一性。
有人知道那里满足(a)和(b)的集合吗?如果没有,是否有比我的扩展方法更好的解决方案?谢谢
答案 0 :(得分:1)
我永远无法理解为什么他们不希望Set
是协变的。您需要做的就是将其设置为Any => Boolean
,而不是A => Boolean
。
您可以自己将其实现为Set[Any]
的包装器,虽然它不是很漂亮,但是会做您想做的...