数组特性:
    1、内存地址连续,使用必须指定数组长度
    2、可使用下标方式访问成员,查询效率高
    3、增删操作会带来系统消耗(保证越界的情况下,需要动态扩容)

    链表特性:
    1、空间要求灵活,存储空间不要求连续
    2、不支持下表访问,支持顺序遍历,查询效率相对较低
    3、增删效率更高,操作节点只和前后节点有关,无需移动元素

    image.png

    源码:
    private static class Node {
    E item; //节点元素
    Node next; //下一个节点
    Node prev; //上一个节点

    1. Node(Node<E> prev, E element, Node<E> next) {<br /> this.item = element;<br /> this.next = next;<br /> this.prev = prev;<br /> }<br />}