checkBoundExclusive(index); T temp = elementData[index]; modCount++; elementCount--; if (index < elementCount) System.arraycopy(elementData, index + 1, elementData, index, elementCount - index); elementData[elementCount] = null; return temp;
return removeElement(o);
  public synchronized T remove(int index)  {    checkBoundExclusive(index);    T temp = elementData[index];    modCount++;    elementCount--;    if (index < elementCount)      System.arraycopy(elementData, index + 1, elementData, index,                       elementCount - index);    elementData[elementCount] = null;    return temp;  }