5

Java makes me sad since it needs wrapper classes for ArrayLists. How would I go about adding a byte[] to a ArrayList<Byte[]>?

1
  • 7
    What is wrong with ArrayList<byte[]>? That works (as a list of byte[] arrays). Perhaps you meant ArrayList<Byte> from a byte[]? Commented Feb 11, 2010 at 21:28

4 Answers 4

4

LOL thought I had to wrap everything. ArrayList<byte[]> works. Thanks Yishai.

Sign up to request clarification or add additional context in comments.

Comments

3

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

3

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[]);

Comments

1

ArrayList works only, if you do not require the results of hashCode() and equals() on this list.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.