ArrayList底层使用的是数组存储的,存储有序,如果底层默认数组空间使用完毕,会创建一个新的数组,长度为原数组的1.5倍。由于采用数组存储,查找速度快,但是不利于频繁的增删操作。
Vector和ArrayList类似,新数组会增加一倍的长度。并且读取不是很爽,方法名称太长了。所以很少使用了。
LinkedList底层采用链表存储元素,所以对于频繁的增删操作效率很高。
其实主要还是看具体的应用,如果数据需要经常遍历,很少增删的话,就使用ArrayList,否则就使用LinkedList。
希望对你有所帮助。 |
|