Java makes me sad since it needs wrapper classes for ArrayLists. How would I go about adding a byte[] to a ArrayList<Byte[]>?
4 Answers
You have to wrap any primitives to use them in a context that requires an object. But a byte[] is not a primitive. It's an array of bytes, and an array is an object.
Just to clarify: Do you really want an ArrayList of arrays of bytes, i.e. effectively a two-dimensional array? Or do you really simply want an ArrayList of bytes? In that case, you would have to wrap the bytes in Bytes to put them in the ArrayList.
Comments
Just for the purpose of others searching for this, if you have Apache Commons on your classpath, you can do something like the following to get Byte[] back (documentation]:
Byte[] result = ArrayUtils.toObject(byte[]);
ArrayList<byte[]>? That works (as a list of byte[] arrays). Perhaps you meantArrayList<Byte>from a byte[]?