这是我的代码
import java.util.Iterator;
import java.util.Vector;
public class Simple {
public static void main(String args[]) {
Vector v1 = new Vector();
v1.add(5);
v1.add(6);
v1.add(9);
v1.add(4);
v1.add(1);
Iterator it = v1.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
}
当我运行此程序时,输出
5 6 9 4 1 所以我对它的定义感到有点困惑:
1.Vector同步。 2.Vector通过将阵列大小加倍来增加其大小
请解释。
答案 0 :(得分:2)
1.Vector同步。
这意味着默认情况下矢量方法是同步的,因此vector上的操作是线程安全的。
2.Vector increases its size by doubling the array size
向量的初始容量为10.当向量的大小达到10时,它的容量加倍。所以如果大小是10那么容量将是20
答案 1 :(得分:0)
要检查Vector是否已同步(它是..),您必须使用多个线程并尝试写入向量..您没有这样做..
是的,内部向量旨在这样做..但是如果你做vector.size()它会显示当前在向量中的元素数量(而不是分配的实际大小)。查看向量的源代码,了解如何实现大小更改。
答案 2 :(得分:0)
new Vector()
创建向量时,内部数组会以某种大小初始化,因此它只能包含一定数量的值。但是当你尝试添加一个值时,当内部数组的一半以上被填充时,内部数组会以一个加倍的大小重新初始化,这样你就可以根据需要包含尽可能多的值。