Cómo usar ByteArrayOutputStream y DataOutputStream simultáneamente (Java)

Estoy teniendo un problema aquí, y creo que es porque no entiendo mucho cómo debo usar la API proporcionada por Java.

Necesito escribir unint y unbyte[] en unabyte[]

Pensé en usar unDataOutputStream para resolver la escritura de datos conwriteInt(int i) ywrite(byte[] b), y para poder poner eso en una matriz de bytes, debería usarByteArrayOutputStream métodotoByteArray().

Entiendo que estas clases usan el patrón Wrapper, así que tenía dos opciones:

DataOutputStream w = new DataOutputStream(new ByteArrayOutputStream());

o

ByteArrayOutputStream w = new ByteArrayOutputStream(new DataOutputStream());

pero en ambos casos, "pierdo" un método. en el primer caso, no puedo acceder altoByteArray() método, y en el segundo, no puedo acceder alwriteInt() método.

¿Cómo debo usar estas clases juntos?

Respuestas a la pregunta(6)

Su respuesta a la pregunta