StringBuilder buffer = new StringBuilder((int)length); append(startSegmentIndex, startSegmentOffset, startSegmentLength, buffer); append(i, buffer); append(endSegmentIndex, endSegmentOffset, endSegmentLength, buffer); assert buffer.length()==length : "buffer.length()!=length: "+buffer.length()+"!="+length; toStringCache = buffer.toString();