zoukankan      html  css  js  c++  java
  • ArrayList和LinkedList的区别

    作为List的两个实现类,他们的方法在逻辑上基本是相同的,但是由于底层数据结构的不同造成他们在使用中性能上有一定的差别。数据量比较小的时候,这种差别可以忽略不计。

      ArrayList的底层数据结构是数组(动态的),我们可以通过数组的下标轻松地一次性定位到元素,因此ArrayList在查询操作中具有很大的优势。但也因其底层数据结构是数组,在进行元素的插入,删除,修改工作时,所有元素的下标都需要移动,这样执行的复杂程度随元素的增多而增多,运行速度自然相对较慢。

      LinkedList的底层数据结构是链表,在进行数据的,增加,删除,修改工作时只需要移动元素的指针就行,改变的只是指针的地址,并不影响其他,因此在数据增删改时,LinkedList具有绝对的优势。但是如果需要查询数据时,LinkedList只能遍历,随着数据量的增加,访问速度会变慢。

  • 相关阅读:
    hasCode in Java
    如何区分同一Class的不同实例对象
    如何构建XML文件
    Spring <context:property-placeholder/>的作用
    关于List的几个方法
    Java 中那些不常用的关键字
    设计模式
    Java源代码阅读-Object.toString()
    修复启动项
    centos关闭防火前
  • 原文地址:https://www.cnblogs.com/123456hjx/p/11294313.html
Copyright © 2011-2022 走看看