java nio buffer

Posted

tags:

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

java nio buffer是用来同java nio channel交互的。我们将channel中的数据读取到buffer中,把buffer中的数据写到channel中。

buffer本质上就是一块内存,我们先写数据,然后再去读。写就是把channel中的数据写入buffer中,读就是说,把buffer中的数据读出来使用。java nio Buffer对象就是来管理这块内存的,简化对该块内存的操作。

1 java nio buffer的基本使用

4个步骤:

第一步,将channel中的数据写入nio buffer中;

第二步,调用buffer的flip()函数,将buffer的写模式转换成读模式;

第三步,从nio buffer中读取数据;

第四步,调用buffer clear方法。

2 nio buffer的capacity、position和limit

nio buffer的capacity是固定的。position就是读写的位置,每读写一个元素,它会自动增加1,调用flip()函数会reset这个position到0。limit是写的数据的总大小,有了它再读的时候就知道要读到哪里为止了,在写了之后,调用flip()函数的时候,会将limit设置成当前的position。

 

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

死磕NIO— NIO基础详解

NIO编程

死磕NIO— NIO基础详解

死磕NIO— NIO基础详解

NIO Buffer 内部机理使用姿势

NIO基础知识点整理---selector除外