我正在研究一些代码,我遇到了类似下面的内容
Vector<Fruit> tables = new Vector<Fruit>(int );
在()内部是一些int变量。它应该代表什么?水果是一类,所以它具有水果的类型。
答案 0 :(得分:1)
int
是默认的初始尺寸(或容量)。 Vector
constructor Javadoc读取,
public Vector(int initialCapacity)
构造一个具有指定初始容量且容量增量等于零的空向量。
此外,我建议您更喜欢List
接口(和ArrayList
实施)而不是Vector
。
答案 1 :(得分:0)
它的初始容量,这意味着它将首次使用此尺寸创建。如果你不确定使用什么值可以使用没有int的构造函数。 new Vector();.但是如果您知道要使用的大致尺寸,那么最好将该值传递给性能。
Java通常默认的初始容量为10,这意味着它会将10个内存位置分配给您的向量。当你在10附近添加元素时增加它。所以它是开销,如果这个大小非常小,一次又一次地分配内存。但是,如果这个值非常高,并且你没有使用它,那就是它的内存浪费。
因此,如果您知道要使用的大致尺寸,则可以相应地传递。
仅在处理某些传统api时使用向量,并将向量作为参数。否则,最好去List。