(int)表示新Vector <object type =“”>(int)?</object>之后的内容

时间:2014-12-10 04:42:48

标签: java vector arraylist

我正在研究一些代码,我遇到了类似下面的内容

Vector<Fruit> tables = new Vector<Fruit>(int );

在()内部是一些int变量。它应该代表什么?水果是一类,所以它具有水果的类型。

2 个答案:

答案 0 :(得分:1)

int是默认的初始尺寸(或容量)。 Vector constructor Javadoc读取,

  

public Vector(int initialCapacity)

     

构造一个具有指定初始容量且容量增量等于零的空向量。

此外,我建议您更喜欢List接口(和ArrayList实施)而不是Vector

答案 1 :(得分:0)

它的初始容量,这意味着它将首次使用此尺寸创建。如果你不确定使用什么值可以使用没有int的构造函数。 new Vector();.但是如果您知道要使用的大致尺寸,那么最好将该值传递给性能。

Java通常默认的初始容量为10,这意味着它会将10个内存位置分配给您的向量。当你在10附近添加元素时增加它。所以它是开销,如果这个大小非常小,一次又一次地分配内存。但是,如果这个值非常高,并且你没有使用它,那就是它的内存浪费。

因此,如果您知道要使用的大致尺寸,则可以相应地传递。

仅在处理某些传统api时使用向量,并将向量作为参数。否则,最好去List。