Advertisement

在多线程环境下ArrayList的问题

阅读量:

ArrayList源码解析

复制代码
    /** *列表大小,elementData中存储的元素个数
       */
    private int size;
    
    public boolean add(E e) {
        ensureCapacityInternal(size + 1);  // Increments modCount!!
        elementData[size++] = e;
        return true;
    }
    
    //
    private void ensureCapacityInternal(int minCapacity) {
        ensureExplicitCapacity(calculateCapacity(elementData, minCapacity));
    }
    
    		//若elementData还没有元素,则返回默认值与最小容量中较大的一个;若elementData已经添加过元素,则返回最小容量
    private static int calculateCapacity(Object[] elementData, int minCapacity) {
        if (elementData == DEFAUL

全部评论 (0)

还没有任何评论哟~