ArrayList:底层的数组结构使用的是数组结构。特点:查询速度快。但是增删稍慢,线程不同步。
判断元素相同或存储元素是依赖equals
LinkedList:底层使用的是链表数组结构。特点:增删速度快,查询速度慢。
Vector:底层是数组数据结构。线程同步。查询增删都慢。被ArrayList替代了。
Vector是元老级的了,从JDK 1.0就开始有了,那个时候集合框架还没有呢。而ArrayList是JDK 1.2才有的,才出现的集合框架。
这几个代码体现不明显,我仿照视频画了个图给你看,就明白了。
再给你一些开发时的建议: 如果取到的元素特别多,涉及到频繁的增删操作的时候,用LinkedList。 涉及到增删操作但是不频繁,用ArrayList或者LinkedList均可。 涉及到增删也涉及到查询,建议使用ArrayList。
希望能够帮到你。
|