入理解ArrayList与LinkedList的区别

ArrayList与LinkedList都是List接口的实现类,只是实现的方式有所不同,而List接口继承了Collection接口,Collection接口又继承了Iterable接口,因此可以看出List同时拥有了Collection与Iterable接口的特性。

一、理解ArrayList

ArrayList实现了List接口,它是以数组的方式来实现的,数组的特性是可以使用索引的方式来快速定位对象的位置,
因此对于快速的随机取得对象的需求,使用ArrayList实现执行效率上会比较好. 

列举循环List列表有三种方式: 使用普通for循环,用get方法获取; 使用Iterator迭代器,使用next方法遍历;使用增强for循环,直接输出,由此可见第三种方法是最方便,最简洁的。

二、理解LinkList

LinkedList是采用链表的方式来实现List接口的,它本身有自己特定的方法,如: addFirst(),addLast(),getFirst(),removeFirst()等. 由于是采用链表实现的,因此在进行insert和remove动作时在效率上要比ArrayList要好得多,适合用来实现Stack(堆栈)与Queue(队列),前者先进后出,后者是先进先出。

连接:ArrayList和LinkedList的区别

          Java集合框架之如何用LinkedList实现简单的栈和队列

猜你喜欢

转载自blog.csdn.net/pbyang_love/article/details/81218326
今日推荐