Vector
实现List
接口。与ArrayList
一样,它也维护插入顺序,但它很少在非线程环境中使用,因为它是同步的,因此它在搜索,添加,删除和更新其元素时表现不佳。
创建向量类对象的三种方法:
方法 1:
Vector vec = new Vector();
它创建一个空的Vector
,默认初始容量为 10。这意味着当需要将第 11 个元素插入Vector
时,将重新调整Vector
的大小。注意:默认情况下,向量将其大小加倍。即,在这种情况下,Vector
大小将保持 10 到 10 次插入,一旦我们尝试插入第 11 个元素,它将变为 20(默认容量 10 的两倍)。
方法 2:
语法:Vector object= new Vector(int initialCapacity)
Vector vec = new Vector(3);
它将创建一个初始容量为 3 的Vector
。
方法 3:
语法:
Vector object= new vector(int initialcapacity, capacityIncrement)
例:
Vector vec= new Vector(4, 6)
这里我们提供了两个论点。初始容量为 4,capacityIncrement
为 6。这意味着插入第 5 个元素时,大小为 10(4 + 6
),第 11 个插入时为 16(10 + 6
)。
Java 中Vector
的完整示例:
import java.util.*;
public class VectorExample {
public static void main(String args[]) {
/* Vector of initial capacity(size) of 2 */
Vector<String> vec = new Vector<String>(2);
/* Adding elements to a vector*/
vec.addElement("Apple");
vec.addElement("Orange");
vec.addElement("Mango");
vec.addElement("Fig");
/* check size and capacityIncrement*/
System.out.println("Size is: "+vec.size());
System.out.println("Default capacity increment is: "+vec.capacity());
vec.addElement("fruit1");
vec.addElement("fruit2");
vec.addElement("fruit3");
/*size and capacityIncrement after two insertions*/
System.out.println("Size after addition: "+vec.size());
System.out.println("Capacity after increment is: "+vec.capacity());
/*Display Vector elements*/
Enumeration en = vec.elements();
System.out.println("\nElements are:");
while(en.hasMoreElements())
System.out.print(en.nextElement() + " ");
}
}
输出:
Size is: 4
Default capacity increment is: 4
Size after addition: 7
Capacity after increment is: 8
Elements are:
Apple Orange Mango Fig fruit1 fruit2 fruit3
常用的Vector
类方法:
void addElement(Object element)
:它在Vector
的末尾插入元素。int capacity()
:此方法返回向量的当前容量。int size()
:它返回向量的当前大小。void setSize(int size)
:它使用指定的大小更改现有大小。boolean contains(Object element)
:此方法检查Vector
中是否存在指定的元素。如果找到该元素,则返回true
,否则返回false
。boolean containsAll(Collection c)
:如果Vector
中存在集合c
的所有元素,则返回true
。Object elementAt(int index)
:它返回Vector
中指定位置的元素。Object firstElement()
:它用于获取向量的第一个元素。Object lastElement()
:返回数组的最后一个元素。Object get(int index)
:返回指定索引处的元素。boolean isEmpty()
:如果Vector
没有任何元素,则此方法返回true
。boolean remove(Object element)
:从向量中移除指定的元素。boolean removeAll(Collection c)
:它从向量中删除所有存在于Collection c
中的元素。void setElementAt(Object element, int index)
:它使用给定元素更新指定索引的元素。