设定初始容量
HashMap扩容是有代价的,需要创建一个新桶,然后一个个去放
所以当你小额度地传递数据,另一端取出来,
这种,1.小额2.可知数量的key-value
需要给HashMap一个初始容量k,k*因子>=key-value对数
当然了,k必须是2次的
降低因子
对于长期留在内存的HashMap,可以降低因子,这样冲突的几率更小,性能就更好一点,只不过更占内存了
intObjectMap
防止了int转型
EnumMap
设定初始容量
HashMap扩容是有代价的,需要创建一个新桶,然后一个个去放
所以当你小额度地传递数据,另一端取出来,
这种,1.小额2.可知数量的key-value
需要给HashMap一个初始容量k,k*因子>=key-value对数
当然了,k必须是2次的
降低因子
对于长期留在内存的HashMap,可以降低因子,这样冲突的几率更小,性能就更好一点,只不过更占内存了
intObjectMap
防止了int转型
EnumMap