Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中Vector类的对象是静态大小的吗?_Java_Vector - Fatal编程技术网

Java中Vector类的对象是静态大小的吗?

Java中Vector类的对象是静态大小的吗?,java,vector,Java,Vector,我在寻找这个问题的答案。 我从谷歌那里得到的东西- Java中的Java.util.Vector类。Vector类实现了一个可扩展的对象数组。向量基本上属于遗留类,但现在它与集合完全兼容。它们与ArrayList非常相似,但Vector是同步的,并且有一些收集框架不包含的遗留方法。由于Java管理自己的内存,请记住,我们不能确切地知道列表/缓冲区/数组的状态 向量,如ArrayList,有一个initialCapacity,可以在构造函数中传入参数。从此时起直到垃圾收集器运行,存储此initia

我在寻找这个问题的答案。 我从谷歌那里得到的东西-
Java中的Java.util.Vector类。Vector类实现了一个可扩展的对象数组。向量基本上属于遗留类,但现在它与集合完全兼容。它们与ArrayList非常相似,但Vector是同步的,并且有一些收集框架不包含的遗留方法。

由于Java管理自己的内存,请记住,我们不能确切地知道列表/缓冲区/数组的状态

向量,如ArrayList,有一个
initialCapacity
,可以在构造函数中传入参数。从此时起直到垃圾收集器运行,存储此
initialCapacity
所需的大小分配给向量

与经典数组不同,向量和列表是可增长的。以下是向向量添加元素时发生的情况的快速说明:

  • 如果向量未满,请将元素添加到向量

  • 如果向量已满,则将向量的大小增加一倍

    • 在内存管理方面,这意味着您需要重新分配向量。如果向量后的空间是自由的,则向量将使用此空间。否则,将分配另一块内存,并将整个向量移动到此块
您可以更改向量在构造函数中的增长量(
capacityIncrement
)。默认值为2,因此容量增长非常快

向量是同步的,但不应该使用迭代器对其进行迭代:它们不是故障安全的(如果在迭代时修改了向量的结构,迭代器将不会更新)。这就是为什么使用锁和ArrayList通常比使用向量更安全(如果您知道如何正确使用锁的话)


您可以在这里获得更多详细信息:

对不起,我不太明白您所说的“静态大小”是什么意思?答案将根据你所指的具体内容而有所不同。