Java总结篇系列:集合(二)

ArrayList和Vector的区别:

1.相同点:

    a.都是继承自Collection接口,即保存的元素都是有序的可重复的。

2.不同点:

    a.ArrayList:是线程不安全的,设计的主要目的是提升单线程操作时的效率,Vector从设计初衷就能看出是为了多线程操作。(类似的有HashMap和HashTable,HashTable相较于HashMap,出现的比较早,当时设计中就考虑了线程安全问题,而为了提升单线程的程序效率,后续版本中才添加了HashMap。)

    b.数据增长不一样,根据官方提供的说明,当ArrayList请求扩容时,增加0.5倍,而Vector是增加1倍。

猜你喜欢

转载自blog.csdn.net/youxia007ya/article/details/80887014