Vector vs ArrayList:Java集合擂台上的较量,哪个更胜一筹

使用方式

96bf9d821263710730a0d5231a364f0a.jpeg

共同点:

他们都实现了 List 接口(List 接口继承了 Collection 接口),他们都是有序集合.

不同点:

线程安全:

Vector 使用了 Synchronized 实现线程同步,是线程安全的.

ba1cc4de03d4cac2dec79c86e7ccbcac.jpeg

ArrayList 是非线程安全的。

87756258deba23d859699216fb81e889.jpeg

性能:

ArrayList 在性能方面要优于 Vector.

扩容:

ArrayList 和 Vector 都会根据实际的需要动态地调整容量,只不过在 Vector 扩容每次会增加 1 倍,而 ArrayList 只会增加 50%。Vector在创建时可以自己指定扩容的大小,ArrayList不可以.

下面是ArrayList的扩容方式:

9f2fc0054b8baec2ce08b51470d0066b.jpeg

Vector在创建时可以自己指定扩容每次扩容时增加的大小

aa8115462155f3377dd4256cdc799ba1.jpeg

Vector扩容:

09619e5eed487cd9fb369a5e6dcf8288.jpeg
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值