ArrayList的学习

    技术2022-07-11  90

    ArrayList的学习

    实现多个接口,且继承一个类

    ArrayList继承AbstractList类实现了List、Cloneable、RandomAccess、Serializable接口

    优点

    容量不固定,想放多少放多少(当然有最大阈值,但一般达不到)有序的(元素输出顺序与输入顺序一致)元素可以为 null效率高size(), isEmpty(), get(), set() iterator(), ListIterator() 方法的时间复杂度都是 O(1) add() 添加操作的时间复杂度平均为 O(n)其他所有操作的时间复杂度几乎都是 O(n)占用空间更小对比 LinkedList,不用占用额外空间维护链表结构

    缺点

    底层为数组,所以它增删的效率比较低,适合尾部的增删。相比于hashmap,它的查找效率比较低。

    Array和ArrayList的区别

    Array可以包含基本类型和对象类型,而ArrayList只能包含对象类型。Array大小是固定的,而ArrayList大小不是固定的。ArrayList提供了多种方法,比如add(), remove(int index)等等。
    Processed: 0.018, SQL: 9