2010-02-11 18 views
5

Java me entristece ya que necesita clases de contenedor para ArrayList s. ¿Cómo podría agregar un byte[] a un ArrayList<Byte[]>?Java: byte [] a Byte []

+7

¿Qué hay de malo con 'ArrayList '? Eso funciona (como una lista de matrices de bytes []). Quizás quiso decir 'ArrayList ' de un byte []? – Yishai

Respuesta

3

LOL pensé que tenía que envolver todo. ArrayList<byte[]> funciona. Gracias, Yishai.

3

Debe envolver las primitivas para usarlas en un contexto que requiera un objeto. Pero un byte [] no es un primitivo. Es una matriz de bytes, y una matriz es un objeto.

Solo para aclarar: ¿Realmente quiere una ArrayList de matrices de bytes, es decir, una matriz bidimensional? ¿O simplemente quieres una ArrayList de bytes? En ese caso, debería envolver los bytes en Bytes para ponerlos en ArrayList.

3

sólo con el propósito de otros en busca de esto, si usted tiene Apache Commons en la ruta de clases, se puede hacer algo como lo siguiente para obtener Byte[] espalda (documentation]:

Byte[] result = ArrayUtils.toObject(byte[]); 
1

ArrayList sólo funciona, si no necesita los resultados de hashCode() y equals() en esta lista.