霍格沃茲軟件測試JMeter高級性能測試
public void add(int index, E element) {
? ? ? ?final ReentrantLock lock = this.lock;
? ? ? ?lock.lock();
? ? ? ?try {
? ? ? ? ? ?Object[] elements = getArray();
? ? ? ? ? ?int len = elements.length;
? ? ? ? ? ?if (index > len || index < 0)
? ? ? ? ? ? ? ?throw new IndexOutOfBoundsException("Index: "+index+
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?", Size: "+len);
? ? ? ? ? ?Object[] newElements;
? ? ? ? ? ?int numMoved = len - index;
? ? ? ? ? ?if (numMoved == 0)
? ? ? ? ? ? ? ?newElements = Arrays.copyOf(elements, len + 1);
? ? ? ? ? ?else {
? ? ? ? ? ? ? ?newElements = new Object[len + 1];
? ? ? ? ? ? ? ?System.arraycopy(elements, 0, newElements, 0, index);
? ? ? ? ? ? ? ?System.arraycopy(elements, index, newElements, index + 1,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? numMoved);
? ? ? ? ? ?}
? ? ? ? ? ?newElements[index] = element;
? ? ? ? ? ?setArray(newElements);
? ? ? ?} finally {
? ? ? ? ? ?lock.unlock();
