1

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

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

我想知道,在 Scala 中是否有任何等价物。

我也知道通过导入 java.util.HashSet 很容易使用 Javas HashSet,但我很好奇 scala.collection.immutable.HashSet 是否可以实现

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

4

1 回答 1

4

Hashsets 在 scala 中有两个缺陷。

mutable.HashSet很像java HashSet,它有 可以在任何(例如空)集合上使用的sizeHint方法来调整当前表的大小。

immutable.HashSet有不同的做法。它是通过哈希树算法而不是哈希表实现的,因此 JimH 提到的方法sizeHint对它来说毫无意义。

于 2015-10-30T20:25:28.250 回答