hashset性能分析

hash表可以存储元素位置为桶,通常一个桶只有一个元素,hash算法在计算时出现hash冲突时会在一个桶下装两个以上的元素。

hashmap与hashset包含如下属性:

容量:hash桶中的数量。

初始化容量:创建表时桶的数量。

尺寸:(size)hash中记录的数量

负载因子:负载因子等于size/capacity 。负载因子为0表示空表。

hash表中有个负载极限,负载极限是0-1的数值,负载极限决定了hash表的最大填满程度,当hash表中的负载因子达到指定的负载极限时,会成倍的增加桶的容量。将原有对象重新分配。这称为rehashing.

hashset中默认的负载极限为0.75,负载极限是时间与空间上的一种折中成本,较高的负载极限可以降低hash表所占用的内存空间。会增加查询数据的时间开销,较低的负载极限会提高性能,但是增加hash表的所占用的内存开销。

你可能感兴趣的:(Java基础)