byte 配列なら ArrayList の代わりに ByteArrayOutputStream に入れるとよい。
toByteArray() で byte 配列になる。