该题已收录: [
]()
提问
java hashmap,如果只确定装载100个元素,new HashMap(?)多少是最佳的,why?
要回答这个题,那我们首先得知道影响HashMap性能的参数有那几个。咱们可以翻翻JDK。
在JDK6中是这么说的:
HashMap的实例有两个参数影响其性能:初始容量和加载因子;
定义:
容量是哈希表桶的数量,初始容量只是哈希表在创建时的容量;
加载因子是哈希表在其容量自动增加之前可以达到多满的一种尺度;
如果哈希表的元素个数超过容量乘加载因子的时候,则要对该哈希表进行rehash操作,现在哈希表将具有大约两倍的桶数;
深入分析
HashMap默认的加载因子是0.75 .它在时间和空间成本上寻求了一种折中的关系;