我有个Vector类的疑问,帮帮忙,应该是很简单的问题

来源:百度知道 编辑:UC知道 时间:2024/06/06 20:19:42
Vector vc = new Vector<String>(1);

我这样定义了一个vc,为什么我不断地vc.add("fff")重复了10遍都不会报错?vc容量不是只有1吗?

Vector默认大小为10,现在你指定是1,不过它会动态增加容量。看一下Vector的函数定义就知道了。
public Vector(int initialCapacity, int capacityIncrement) {
super();
if (initialCapacity < 0)
throw new IllegalArgumentException("Illegal Capacity: "+
initialCapacity);
this.elementData = new Object[initialCapacity];
this.capacityIncrement = capacityIncrement;
}

/**
* Constructs an empty vector with the specified initial capacity and
* with its capacity increment equal to zero.
*
* @param initialCapacity the initial capacity of the vector.
* @exception IllegalArgumentException if the specified initial capacity
* is negative
*/
public Vector(int initialCapacity) {
this(initialCapacity, 0);
}

/**
* Constructs an empty vector so that its internal data array