I was wondering if it is possible, access a byte[] with an offset without having to copy data around?
I’ve looked at Arrays.*, ByteArrayInputStream and System.arraycopy, but they all require to allocate a new byte[] to copy to.
What I want is an equivalent to this in C++:
char* buffer = new char[256];
char* buf_offset = buffer + 128; // <- no copy
You can pass
ByteBufferaround instead. It can be advanced, duplicated, sliced without copying.ByteBuffer is really ugly and counter-intuitive. However it’s being used extensively in new JDK APIs, so one can probably accept that it’s a basic type.