Vector
vector是一个同步线程安全的集合,底层是数组,实现同步的方式
是对底层数组的操作方法添加synchronize关键字,因此性能会较差,
整体实现跟ArrayList差不多
// 诸如此类
public synchronized boolean add(E e) {}
Stack
顾名思义,是个栈,后进先出,继承自Vector,所以线程安全,效率较低,可以用线程不安全的LinkedList替代
public class Stack<E> extends Vector<E> {}
// 主要方法
// 入栈
public E push(E item) {}
// 出栈
public synchronized E pop() {}
// 返回栈顶元素
public synchronized E peek() {}
// 搜索元素,返回从栈顶往下数的个数 push(1),push(2),search(1)=2
public synchronized int search(Object o) {}