void compact() { if (gapLength > 0) { int newLength = charArray.length - gapLength; char[] newCharArray = new char[newLength]; int gapEnd = gapStart + gapLength; System.arraycopy(charArray, 0, newCharArray, 0, gapStart); System.arraycopy(charArray, gapEnd, newCharArray, gapStart, charArray.length - gapEnd); charArray = newCharArray; gapStart = charArray.length; gapLength = 0; } markVector.compact(); }