question: public void ensureCapacity ( int capacity ) { if ( mGarbage && mSize >= mKeys . length ) { gc ( ) ; } if ( mKeys . length < capacity ) { int [ ] nkeys = new int [ capacity ] ; Object [ ] nvalues = new Object [ capacity ] ; System . arraycopy ( mKeys , 0 , nkeys , 0 , mKeys . length ) ; System . arraycopy ( mValues , 0 , nvalues , 0 , mValues . length ) ; mKeys = nkeys ; mValues = nvalues ; } }
target:  Increases the size of the underlying storage if needed, to ensure that it can hold the specified number of items without having to allocate additional memory