你之所以问这个问题其实就是因为你还没有完全理解这两个集合的特点而已,现在总结如下:
1、出现的先后
Vector先出现,ArrayList后出现
2、是否同步
Vector:是同步的比较安全
ArrayList:时非同步的,在多线程中不安全
3、效率问题
Vector:由于涉及到锁的问题,所以效率较低
ArrayList:效率较高
综上所述,在两者使用的场合总结如下:
1、当不涉及到多线程时:
由于不涉及到安全问题,当然选择效率较高的ArrayList了!
2、当涉及到多线程时:
为了安全的原因可以选择使用Vector,但如果想用ArrayList的话,也可以手动加锁
所以:虽然Vector效率低,但场合不同时它还是有使用的价值的。 |