在 Scala 中初始化不可变 HashSet 的初始容量和加载因子

Initializing initial capacity and load factor of immutable HashSet in Scala

在Scala中初始化HashSet的初始容量和加载因子有没有简单的方法?在Java中很容易,例如:

public HashSet set = new HashSet(1 << 8, 0.6f)

我想知道,在 Scala 中是否有与此等效的东西。

我也知道使用 Javas HashSet 很容易,只需导入 java.util.HashSet,但我很好奇 scala.collection.immutable.HashSet

是否也可以

编辑。 我检查了 Scala API 和 HashSet 源代码,但没有发现任何有用的东西。

Hashsets 在 Scala 中有两个缺陷。

mutable.HashSet 很像 java HashSet 并且它有 sizeHint method which could be used on any (e.g. empty) 集合以调整当前大小 table。

immutable.HashSet has different approach. It is implemented via hash trie algorithm instead of hash table 所以正如 JimH 提到的 sizeHint 这样的方法对它来说毫无意义。