深入理解java集合框架之---------Arraylist集合 -----添加方法

2021-07-14 16:08

阅读:762

标签:index   min   doc   xtend   OLE   boolean   框架   position   ted   

Arraylist集合 -----添加方法

1、add(E e) 向集合中添加元素

  

/**
	 * 检查数组容量是否够用
	 * @param minCapacity
	 */
	public void ensureCapacity(int minCapacity){
		modCount++;
		int oldCapacity = elementData.length;
		if(minCapacity > oldCapacity){
			Object oldData[] = elementData;
			int newCapacity = (oldCapacity * 3)/2+1;
			if(newCapacity 
/* (non-Javadoc)
	 * 向ArrayList中添加元素
	 * @see java.util.AbstractList#add(java.lang.Object)
	 */
	public boolean add(E e){
		ensureCapacity(size+1);
		elementData[size++] = e;
		return true;
	}

 2、add(int  index ,E e) 向集合的指定索引处添加元素

  

/**
     * Inserts the specified element at the specified position in this
     * list. Shifts the element currently at that position (if any) and
     * any subsequent elements to the right (adds one to their indices).
     *
     * @param index index at which the specified element is to be inserted
     * @param element element to be inserted
     * @throws IndexOutOfBoundsException {@inheritDoc}
     */
    public void add(int index, E element) {
	if (index > size || index 

  3、addAll(Collection c) 添加集合

 

/* 
	 * 添加元素集合
	 * (non-Javadoc)
	 * @see java.util.AbstractCollection#addAll(java.util.Collection)
	 */
	public boolean addAll(Collection extends E> c){
		Object[] a = c.toArray();
		int numNew = a.length;
		ensureCapacity(size+numNew);
		System.arraycopy(a, 0, elementData, size, numNew);
		size+=numNew;
		return numNew!=0;
		
	}

  4、addAll(int index, Collection extends E> c); 在指定索引出添加集合

  

public boolean addAll(int index, Collection extends E> c) {
	if (index > size || index  0)
	    System.arraycopy(elementData, index, elementData, index + numNew,
			     numMoved);

        System.arraycopy(a, 0, elementData, index, numNew);
	size += numNew;
	return numNew != 0;
    }

  

深入理解java集合框架之---------Arraylist集合 -----添加方法

标签:index   min   doc   xtend   OLE   boolean   框架   position   ted   

原文地址:https://www.cnblogs.com/hanxue112253/p/9537709.html


评论


亲,登录后才可以留言!