java nio之Buffer

Posted 小不点丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java nio之Buffer相关的知识,希望对你有一定的参考价值。

  一、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

  五、基本上用法,就这些了吧,其他的大同小异了。

 

以上是关于java nio之Buffer的主要内容,如果未能解决你的问题,请参考以下文章

《Java源码分析》:Java NIO 之 Buffer

java NIO之buffer

Java IO之NIO原理解析以及代码解析

JAVA基础知识之NIO——Buffer

Java NIO之Buffer

Java NIO 之 Buffer(缓冲区)