您好我试图找到数组列表和向量的加载因子,但我无法找到它。我知道HashMap和其他Map的加载因子是0.75。任何人都可以帮我找到如何检查Vector和Arraylist的加载因子。
答案 0 :(得分:6)
<强>的ArrayList:强>
<强>矢量:强>
答案 1 :(得分:1)
我假设您想知道ArrayList
和Vector
如何增加其大小。
对于ArrayList
,每次将元素放入其中时,都会检查嵌套数组是否需要扩大其大小。如果是,通常,其规模将随着:
newCapacity = oldCapacity + (oldCapacity >> 1);
对于某些特殊情况,例如,添加许多或大量元素,事情会有所不同。请参阅grow(int minCapacity)
源代码中的java.util.ArrayList
功能。
关于Vector
,一般来说,它的大小会随着:
newCapacity = oldCapacity + ((capacityIncrement > 0) ?
capacityIncrement : oldCapacity);
对于某些特殊情况,请参阅grow(int minCapacity)
中的java.util.Vector
。
答案 2 :(得分:-1)
ArrayList al = new ArrayList(); for(int i = 0; i <= 10; i ++){ al.add(i + 1); } 默认容量= 10 在上面的示例中,我们要添加11个元素,因此ArrayList的新Capacity为 int newCapacity =(旧容量* 3)/ 2 + 1 (10 * 3)/ 2 + 1 = 16