Scala HashMap 上的负载因子

问题描述 投票:0回答:1

Scala 的 HashMaps 相对于 Java 的不提供改变负载因子。 如果我使用

Integer
s 作为键,它会使用 1 的负载因子吗?

我知道我可以只实现一个列表并用空值和元素填充它,但是 地图更方便。

Scala 中带有

HashMap
键的
Integer
s 的默认加载因子是多少?

scala dictionary collections hashmap
1个回答
3
投票

如果你说的是

scala.collection.mutable.HashMap
,默认的负载因子 似乎是 0.75,我没有看到任何特定于整数的东西。您还可以使用构建器设置自定义加载因子

然而,对于不可变集合来说,情况就不同了。由于它们不会改变,因此不需要加载因子,因为在“添加”元素时需要重新创建整个地图。 话虽如此,在检查scala.collection.immutable.HashMap

代码时,我没有看到任何类型的负载因子。

如果您创建具有特定功能的

HashMap
(不提供设置自定义负载因子的能力),它似乎是动态计算的

© www.soinside.com 2019 - 2024. All rights reserved.