ArrayList和LinkedList中的get方法底层实现

1.ArrayList的get方法  因为底层是数组 直接通过下标获得


2.LinkedList的get方法  因为底层是链表,链表没有下标,需要迭代遍历:

 if (index < (size >> 1)) {
            Node x = first;
            for (int i = 0; i < index; i++)
                x = x.next;
            return x;
        } else {
            Node x = last;
            for (int i = size - 1; i > index; i--)
                x = x.prev;
            return x;
        }
    }


你可能感兴趣的:(错误笔记)