Какой из следующих подходов более эффективен с точки зрения использования и производительности памяти:
- Запись
ByteArrayOutputStream
в FileOutputStream
, т. Е. baos.writeTo(output);
или - Преобразование
ByteArrayOutputStream
to ByteArray
и затем запись в FileOutputStream
т.е. output.write(baos.toByteArray());
Я проанализировал и обнаружил, что 2-й подход требует больше памяти при записи в файл, так как baos.toByteArray()
создает недавно выделенныйByte
массив.
Пожалуйста, предложите.Как вы думаете, есть ли польза от использования output.write(baos.toByteArray())
?
FileOutputStream output = new FileOutputStream(path);
ByteArrayOutputStream baos = getBaos();
baos.writeTo(output);
//output.write(baos.toByteArray());