一、JAVA NIO 是在和channel交互的时候使用的。Channel将数据读入缓冲区,然后我们又从缓冲区访问数据。写数据时,首先将要发送的数据按顺序填入缓冲区。基本上,缓冲区只是一个列表,它的所有元素都是基本数据类型(通常为字节型).
二、Buffer的实现有下面几种(ByteBuffer是比较常用的,这里也只介绍ByteBuffer)
- ByteBuffer
- CharBuffer
- DoubleBuffer
- FloatBuffer
- IntBuffer
- LongBuffer
- ShortBuffer
三、ByteBuffer声明
ByteBuffer byteBuffer = ByteBuffer.allocate(1024);//设置缓冲区
ByteBuffer byteBuffer = ByteBuffer.wrap("hello".getBytes());//带入数据
ByteBuffer byteBuffer = ByteBuffer.allocateDirect(1024) // 直接设置内存
四、ByteBuffer中基本方法
byteBuffer.flip(); //可读模式
byteBuffer.array(); //转换成byte[]
byteBuffer.clear(); //清楚缓存
byteBuffer.put("hello".getBytes()); //放入数据
byteBuffer.compareTo(ByteBuffer.allocate(100)); //比较2个ByteBuffer
五、基本上用法,就这些了吧,其他的大同小异了。