-
相同之处
- 两者都是可变长的数组或数组列表,可以通过拷贝到新数组的方式扩容;
- 可以通过索引值找到元素,是有序的;
-
区别
- C++的Vector可以通过[]索引元素,而ArrayList没有重载这个符号;
- Vector是值传递,例Vector a;Vector b = a;此时b只是拷贝了a,两个并不是指向同个地址;而Java是值传递了数组的引用,因此a = b指向了同个地址,操作b的同时,a也会随着改变。
-
Java的Vector和ArrayList
两者都是可扩容数组列表,但是Vector是线程安全的,效率较ArrayList低。
网友评论