【发布时间】:2011-01-12 06:42:39
【问题描述】:
ArrayList al = new ArrayList(); 有什么区别?和 ArrayList al = new ArrayList(0)?
【问题讨论】:
-
new ArrayList()等价于(并且可能在以下方面实现)new ArrayList(10) -
可能是 JVM 分配内存的差异。
标签: java
ArrayList al = new ArrayList(); 有什么区别?和 ArrayList al = new ArrayList(0)?
【问题讨论】:
new ArrayList() 等价于(并且可能在以下方面实现)new ArrayList(10)
标签: java
ArrayList(0)
具有指定初始容量的空列表。 0
ArrayList()
初始容量为 10 的空列表。
请阅读以下内容:http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html
【讨论】:
如果您查看API,它会说, ArrayList() - 构造一个初始容量为 10 的空列表。
ArrayList(int initialCapacity) - 构造一个具有指定初始容量的空列表。
【讨论】:
new ArrayList() 为您提供一个具有默认初始容量的数组列表(最初从 ArrayList 分配了多少内存)。 new ArrayList(0) 为您提供一个初始容量为零的数组列表。只要将一个元素添加到列表中,就会分配容量。
【讨论】: