# java的1.8ArrayList的构造函数分析
Constructs an empty list with the specified initial capacity.构造一个具有指定初始容量的空列表。
Params: initialCapacity – the initial capacity of the list
initialCapacity – 列表的初始容量
Throws: IllegalArgumentException – if the specified initial capacity is negative
IllegalArgumentException – 如果指定的初始容量为负值
// 注意:不能为负值
public ArrayList(int initialCapacity) {
if (initialCapacity > 0) {
// 创建新数组
this.elementData = new Object[initialCapacity];
} else if (initialCapacity == 0) {
this.elementData = EMPTY_ELEMENTDATA;
} else {
// 小于 0
throw new IllegalArgumentException("Illegal Capacity: "+
initialCapacity);
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
Shared empty array instance used for empty instances.
共享的空数组实例,供空实例使用。
private static final Object[] EMPTY_ELEMENTDATA = {};
1