public ByteBuffer put(byte[] src,int srcOffset,int byteCount){
  Arrays.checkOffsetAndCount(src.length,srcOffset,byteCount);
  if (byteCount > remaining()) {
    throw new BufferOverflowException();
  }
  for (int i=srcOffset; i < srcOffset + byteCount; ++i) {
    put(src[i]);
  }
  return this;
}

public ByteBuffer put ( byte [ ] src , int srcOffset , int byteCount ) { Arrays . checkOffsetAndCount ( src . length , srcOffset , byteCount ) ; if ( byteCount > remaining ( ) ) { throw new BufferOverflowException ( ) ; } for ( int i = srcOffset ; i < srcOffset + byteCount ; ++ i ) { put ( src [ i ] ) ; } return this ; }
writes bytes in the given byte array , starting from the specified offset , to the current position and increases the position by the number of bytes written .
