ByteArrayOutputStream源代码解析
博主最近在做数据写入方面的内容,顺便看了一下ByteArrayOutputStream的源代码,下面对源代码中的各个变量和方法进行一下介绍。
这个类主要是JDK中提供的对Byte类型数据进行写入的类,其实是一个中间缓存层,数据将通过这个类写入到文件等其他outputstream
如果遇到写int乱码问题,可直接参见write(int b)方法
变量
protected byte buf[]
这个是数据存储的地方protected int count
这个是计数器,表示数据的个数private static final int MAX_ARRAY_SIZE
这个表示buf的最大值,为Integer.MAX_VALUE - 8
主要方法
ensureCapacity
private void ensureCapacity(int minCapacity) {
// overflow-conscious code