ArrayList和LinkedList有什么联系和区别呢?
									
下文笔者讲述Arraylist和LinkedList之间的区别和联系,如下所示
 
				 
				一、联系及相同点
1.1两者都实现了相同的接口 java.util.List、Cloneable、java.io.Serializable。 1.2两者都支持泛型,都支持克隆,都支持序列化 1.3两者都不是线程安全
二、ArrayList和LinkedList的区别
1、ArrayList继承了AbstractList类
    LinkedList继承了AbstractSequentialList类,而AbstractSequentialLis继承了AbstractList
    LinkedList继承的AbstractSequentialList
	   实现get(int index)
           set(int index, E element)
           add(int index, E element)
           remove(int index)
         降低List接口的复杂度
2、ArrayList和LinkedList的内部实现的数据结构不同
   ArrayList内部是由数组是实现
   LinkedList内部是由循环双向链表实现
  由于ArrayList是由数组实现的,所以ArrayList在进行查找速度要优于由链表实现的LinkedList
  但删除添加操作时
     LinkedList速度要优于ArrayList
   即:数据查找时,使用ArrayList
     而插入和删除操作比较多时,使用LinkedList
3、LinkedList需要更多的内存空间
   因为它除了要存储数据之外,还需要存储该节点的前后节点信息
   ArrayList索引处就是存的数据
									
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

			
               
               
               
               
          
