File tree Expand file tree Collapse file tree 1 file changed +26
-11
lines changed
Expand file tree Collapse file tree 1 file changed +26
-11
lines changed Original file line number Diff line number Diff line change @@ -321,23 +321,38 @@ public class EnsureCapacityTest {
321321 long endTime = System . currentTimeMillis();
322322 System . out. println(" 使用ensureCapacity方法前:" + (endTime - startTime));
323323
324- list = new ArrayList<Object > ();
325- long startTime1 = System . currentTimeMillis();
326- list. ensureCapacity(N );
327- for (int i = 0 ; i < N ; i++ ) {
328- list. add(i);
329- }
330- long endTime1 = System . currentTimeMillis();
331- System . out. println(" 使用ensureCapacity方法后:" + (endTime1 - startTime1));
332324 }
333325}
334326```
335327
336328运行结果:
337329
338330```
339- 使用ensureCapacity方法前:4637
340- 使用ensureCapacity方法后:241
331+ 使用ensureCapacity方法前:2158
332+ ```
333+
334+ ``` java
335+ public class EnsureCapacityTest {
336+ public static void main (String [] args ) {
337+ ArrayList<Object > list = new ArrayList<Object > ();
338+ final int N = 10000000 ;
339+ list = new ArrayList<Object > ();
340+ long startTime1 = System . currentTimeMillis();
341+ list. ensureCapacity(N );
342+ for (int i = 0 ; i < N ; i++ ) {
343+ list. add(i);
344+ }
345+ long endTime1 = System . currentTimeMillis();
346+ System . out. println(" 使用ensureCapacity方法后:" + (endTime1 - startTime1));
347+ }
348+ }
349+ ```
350+
351+ 运行结果:
352+
353+ ```
354+
355+ 使用ensureCapacity方法前:1773
341356```
342357
343- 通过运行结果,我们可以很明显的看出向 ArrayList 添加大量元素之前最好先使用` ensureCapacity ` 方法,以减少增量重新分配的次数
358+ 通过运行结果,我们可以看出向 ArrayList 添加大量元素之前最好先使用` ensureCapacity ` 方法,以减少增量重新分配的次数。
You can’t perform that action at this time.
0 commit comments