002-JavaNIO
NIO
Java NIO 由以下三个核心组件组成 channel(通道) Buffer(缓冲区) Selector(选择器)
Buffer
八大Buffer:ByteBuffer CharBuffer DoubleBuffer FloatBuffer IntBuffer LongBuffer ShortBuffer MappedByteBuffer
属性
capacity:表示内部容量的大小
position:表示当前的位置
limit:表示读写的最大上限
初始化
IntBuffer intBuffer = IntBuffer.allocate(20); // 初始化一个容量为20的IntBuffer
方法
put(): 放入数据到缓冲区
intBuffer.put(1); // Buffer状态必须是写模式
flip(): 翻转
intBuffer.flip(); // 将读模式改为写模式
get():从缓冲区获取数据
intBuffer.get(); // Buffer状态必须是读取模式
rewind():倒带重新读取数据
intBuffer.rewind();
mark()和reset(): 标记和恢复到标记状态
intBuffer.mark(); // mark
intBuffer.reset(); //reset
clear():清空缓冲区
intBuffer.clear(); // clear