今天閒得無聊,想認真瞭解一下集合的API,就看了一下Vector的所有方法,我就簡單給大家介紹一下這些方法的基本用法,希望對大家有幫助。
Vector:動態數組
特點:
1、允許含有重複元素
2、允許含有空
3、由於Vector底層是使用數組來實現的,所以查詢效率極高,但是添加刪除效率低(因爲他需要折騰其他元素)
4、Vector在多線程下是線程安全的。但是性能是低下的。
方法摘要:
1、add(E e): 將指定元素添加到此向量的末尾。
Vector<String> list=new Vector<>();
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.add("ddd");
2、add(int index, E element) 在此向量的指定位置插入指定的元素。
Vector<String> list=new Vector<>();
list.add(1,"eee");
3、addAll(Collection
Vector<String> list=new Vector<>();
Vector<String> list1=new Vector<>();
list.add("aaa");
list.add("bbb");
list1.add("ccc");
list1.add("ddd");
list.addAll(list1);
4、addAll(int index, Collection
Vector<String> list=new Vector<>();
Vector<String> list1=new Vector<>();
list.add("aaa");
list.add("bbb");
list1.add("ccc");
list1.add("ddd");
list.addAll(0,list1);
5、addElement(E obj) : 將指定的組件添加到此向量的末尾,將其大小增加 1。
其實我感覺和add()方法差不多,就是返回值不一樣,這個是void返回值
list.addElement("ccc");
6、capacity() :返回此向量的當前容量。
System.out.println(v.capacity());
7、clear() : 從此向量中移除所有元素。
v.clear()
8、clone() : 返回向量的一個副本。
這個方法在Object中非final方法,但是他是protected類型的,所以如果想用這個方法,必須重寫此方法的同時改成public ,這個Vector中的clone就是重新了Object方法。
v.clone();
public synchronized Object clone() {
try {
@SuppressWarnings("unchecked")
Vector<E> v = (Vector<E>) super.clone();
v.elementData = Arrays.copyOf(elementData, elementCount);
v.modCount = 0;
return v;
} catch (CloneNotSupportedException e) {
// this shouldn't happen, since we are Cloneable
throw new InternalError(e);
}
}
9、contains(Object o) : 如果此向量包含指定的元素,則返回 true。
System.out.println(list.contains("aaa"));
10、containsAll(Collection
Vector<String> list=new Vector<>();
Vector<String> list1=new Vector<>();
list.add("aaa");
list.add("bbb");
list1.add("ccc");
list1.add("ddd");
System.out.println(list.containsAll(list1));
11、copyInto(Object[] anArray): 將此向量的組件複製到指定的數組中。
String[] str=new String[v.size()];
list.copyInto(str);//複製集合的元素到數組中
for (String string : str) {
System.out.println(string);
}