ArrayList和LinkedList

  1. ArrayList
    底层维护的是一个Object类型的数组,使用无参构造方法, 创建一个ArrayList集合对象默认的元素个数为10
    特征:
    查询快,增删慢

    查询快:
    使用的是数组的下标访问方式,可以直达目标位置

    增删慢:
    增加,有可能会触发数组的扩容机制,会创建一个新的数组,新的数组元素个数大约是原
    数组的1.5倍。然后会有一个数组拷贝的过程,这个过程是将原数组里面的每一个元素个
    复制到新数组中,这个操作消耗大量的时间和空间

    删除 是从Object数组中删除是一个元素,删除之后,后面元素会向前移动,移动的过程
             是一个复制的过程,这个操作,比较浪费时间
    

    增加的原理是:
    newCapacity = oldCapacity + (oldCapacity >> 1);

2.LinkedList:
底层维护的是一个链表 《数据结构》
增删快,查找慢

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容