public AsciiString subSequence ( int start , int end , boolean copy ) { if ( isOutOfBounds ( start , end - start , length ( ) ) ) { throw new IndexOutOfBoundsException ( "expected: 0 <= start(" + start + ") <= end (" + end + ") <= length(" + length ( ) + ' ' ) ; } if ( start == 0 && end == length ( ) ) { return this ; } if ( end == start ) { return EMPTY_STRING ; } return new AsciiString ( value , start + offset , end - start , copy ) ; }
Either copy or share a subset of underlying sub - sequence of bytes .