public ByteVector putByteArray(
      final byte[] byteArrayValue, final int byteOffset, final int byteLength) {
    if (length + byteLength > data.length) {
      enlarge(byteLength);
    }
    if (byteArrayValue != null) {
      System.arraycopy(byteArrayValue, byteOffset, data, length, byteLength);
    }
    length += byteLength;
    return this;
  }
public ByteVector putByteArray(
      final byte[] byteArrayValue, final int byteOffset, final int byteLength) {
    if (length + byteLength > data.length) {
      enlarge(byteLength);
    }
    if (byteArrayValue != null) {
      System.arraycopy(byteArrayValue, byteOffset, data, length, byteLength);
    }
    length += byteLength;
    return this;
  }
public ByteVector putByteArray ( final byte [ ] byteArrayValue , final int byteOffset , final int byteLength ) { if ( length + byteLength > data . length ) { enlarge ( byteLength ) ; } if ( byteArrayValue != null ) { System . arraycopy ( byteArrayValue , byteOffset , data , length , byteLength ) ; } length += byteLength ; return this ; }
Puts an array of bytes into this byte vector. The byte vector is automatically enlarged if
necessary.

@param byteArrayValue an array of bytes. May be {@literal null} to put {@code byteLength} null
bytes into this byte vector.
@param byteOffset index of the first byte of byteArrayValue that must be copied.
@param byteLength number of bytes of byteArrayValue that must be copied.
@return this byte vector.
Puts an array of bytes into this byte vector . The byte vector is automatically enlarged if necessary .