List:
* ArrayList:
* 底层数据结构是数组,查询快,增删慢
* 线程不安全,效率高
* Vector:
* 底层数据结构是数组,查询快,增删慢
* 线程安全,效率低
* LinkedList:
* 底层数据结构是链表,查询慢,增删快
* 线程不安全,效率高
*
* ArrayList,Vector和LinkedList的各自特点?ArrayList,Vector和LinkedList我们到底使用谁呢?
* 看情况
*
* 要安全吗?
* 要:Vector(这个现在也不常用,在Collections里面有新的方式)
* 不要:ArrayList和LinkedList
* 查询多:ArrayList
* 增删多:LinkedList
* ArrayList:
* 底层数据结构是数组,查询快,增删慢
* 线程不安全,效率高
* Vector:
* 底层数据结构是数组,查询快,增删慢
* 线程安全,效率低
* LinkedList:
* 底层数据结构是链表,查询慢,增删快
* 线程不安全,效率高
*
* ArrayList,Vector和LinkedList的各自特点?ArrayList,Vector和LinkedList我们到底使用谁呢?
* 看情况
*
* 要安全吗?
* 要:Vector(这个现在也不常用,在Collections里面有新的方式)
* 不要:ArrayList和LinkedList
* 查询多:ArrayList
* 增删多:LinkedList
* 不知道用哪个,就用ArrayList。
Vector特有功能:
左边为Vector,右边为其相对应的ArrayList的功能。
* A:添加元素
* public void addElement(Object obj) -- add(Object obj)
* B:获取元素
* public Object elementAt(int index) -- get(int index)
* public Enumeration elements() -- Iterator iterator()
* hasMoreElements() hasNext()
* nextElement() next()
LinkedList的特有功能:
* A:添加功能
* void addFirst()
* void addLast()
* B:移除功能
* Object removeFirst()
* Object removeLast()
* C:获取功能
* Object getFirst()
* Object getLast()