2.2 Buffer
Buffer是一个对象,它包含一些要写入或者要读取的数据.在NIO类库中加入Buffer对象,体现了新库与原IO的一个重要的区别.在面向流的IO中,可以将数据直接写入或读取到Stream对象中.在NIO库中,所有数据都是用缓冲区处理的.缓存区实质上是一个数组,通常它是一个字节数组(ByteBuffer),也可以使用其他类型的数组,这个数组为缓冲区,这个数值为缓存区提供了数据访问读写等操作,例如位置 容量 上限
IntBuffer buf3 = IntBuffer.allocate(10);//声明10个变量的缓存区
buf.get() 记得把位置清零 buf.flip()--进行位置的清空
buf.put() 也会把buf的位置容量进行增加 遍历 的时候记得清零
Int ----> IntBuffer
int [] arr = new int[]{1,2,5};
IntBuffer buf1 = IntBuffer.wrap(arr);
//或者定义截取的字段大小及长度
IntBuffer buf2 = IntBuffer.wrap(arr,0,2);
//复制方法
IntBuffer buf3 = buf1.duplicate();
//改变buf1的位置属性
buf1.position(1);
//循环buf
buf1.remaining();