当前位置: 技术问答>java相关
Vector 和 ArrayList到底有什么区别?
来源: 互联网 发布时间:2015-11-18
本文导语: 看书得到的信息好像是Vector是从java 1开始就有了, ArrayList 是后来才有的. 用途几乎都一样,(不需要定义长度的array) 没什么区别. 现在好像应该用 ArrayList.(因为比较新?) 象thinking in java 和 computer concepts with java...
看书得到的信息好像是Vector是从java 1开始就有了, ArrayList 是后来才有的. 用途几乎都一样,(不需要定义长度的array) 没什么区别. 现在好像应该用 ArrayList.(因为比较新?) 象thinking in java 和 computer concepts with java essentials 都是旧版讲Vector, 新版讲ArrayList.
那么到底有什么区别, 什么时候用Vector, 什么时候改用ArrayList?
那么到底有什么区别, 什么时候用Vector, 什么时候改用ArrayList?
|
Java提供了四种类型的“集合类”:Vector(矢量)、BitSet(位集)、Stack(堆栈)以及Hashtable(散列表)。(还要请各位应用过的高手比较一下什么时候用哪种比较合适)
List
| |
LinkList ArrayList
ArrayList 作为一个常规用途的对象容器使用,用于替换原先的Vector。允许我们快速访问元素,但在从列表中部插入和删除元素时,速度却嫌稍慢。一般只应该用ListIterator对一个ArrayList进行向前和向后遍历,不要用它删除和插入元素;与LinkedList相比,它的效率要低许多
----think in java
List
| |
LinkList ArrayList
ArrayList 作为一个常规用途的对象容器使用,用于替换原先的Vector。允许我们快速访问元素,但在从列表中部插入和删除元素时,速度却嫌稍慢。一般只应该用ListIterator对一个ArrayList进行向前和向后遍历,不要用它删除和插入元素;与LinkedList相比,它的效率要低许多
----think in java
|
vector类所有的方法都是被同步的,虽然两个线程并发访问vector对象是安全的,但如果只用一个线程访问失量,由于源代码调用了被同步的方法,其运行时间要长一些。arrayList为非同步的。
引自 core java.
引自 core java.
|
增长见识,关注!!!