Java 为什么不用Vector

Stack就是继承Vector的,而我们常常用Deque替代Stack(Deque可以当栈也可以当队列)

不使用Vector及子类原因如下:

1. 因为vector是线程安全的,所以效率低,这容易理解,类似StringBuffer

2. Vector空间满了之后,扩容是一倍,而ArrayList仅仅是一半

3. Vector分配内存的时候需要连续的存储空间,如果数据太多,容易分配内存失败

4. 只能在尾部进行插入和删除操作,效率低

posted @ 2021-03-05 14:28  Kinghao0319  阅读(686)  评论(0编辑  收藏  举报