美文网首页
List详解

List详解

作者: 荒天帝886 | 来源:发表于2019-10-27 14:31 被阅读0次

    https://www.jianshu.com/p/63b01b6379fb

    image.png

    ArrayList和LinkedList

    ArrayList底层是数组,数组容量是不可变的,因此ArrayList需要动态扩容。在增加操作时,动态扩容会消耗时间。
    由于ArrayList底层是数组,因此每个元素都带有索引,在查询效率上要比LinkedList高很多

    LinkedList底层是双向链表,新增元素就是在链表上新增节点,不存在扩容的问题,因此在增删改效率上较高,但是由于不存在索引,每次查询都要遍历整个链表,查询效率较低

    • ArrayList优化了扩容机制,因此实际操作中, ArrayList在执行新增操作时,效率也略高于LinkedList

    forEach和for循环的快慢

    ArrayList底层是数组,所以使用for循环速度稍快,因为for循环用到了index索引。

    LinkedList使用forEach循环较好

    相关文章

      网友评论

          本文标题:List详解

          本文链接:https://www.haomeiwen.com/subject/cgnpvctx.html