返回大字节数组或使用 ByteArrayOutputStream

Returning big size byte array or using ByteArrayOutputStream

我的问题是大字节数组(从 10k 字节开始),我是否应该 return 像这样指示字节数组值:

byte[] my_function() {
...
return value;
}

或使用 ByteArrayOutputStream/OutputStream 作为参数?

void my_function(ByteArrayOutputStream os) {
...
os.write(value);
}

你能告诉我使用 ByteArrayOutputStream/OutputStream 相对于直接 return 结果的优势吗?

如njzk2的评论:

Plain OutputStream 会将选项留给函数的调用者使用任何其他类型的流,包括但不限于文件、网络、byte[]、.. 将 OutputStream 作为参数给使用你函数的人更多的灵活性