Java使用Buffer常用方法记录
Buffer是一个抽象类,常用的子类有:ByteBuffer,ShortBuffer,IntBuffer,LongBuffer,FloatBuffer,DoubleBuffer。
Buffer类没有提供公共构造器,需要通过allocate(int buffersize)方法来创建对象。
Buffer操作常用方法:
Buffer allocate(int buffersize):创建Buffer对象;
int capacity():返回Buffer的大小,capacity;
boolean hasRemaining():判断当前位置和界限之间是否有可处理元素,此处界限非Buffer的大小;
int limit():返回Buffer的界限位置索引;
Buffer limit(int newlimit):重新设置Buffer的界限值,返回新的界限值的Buffer对象;
Buffer mark():设置Buffer的mark位置,只能在0和已读取或写入缓冲区的位置之间设置mark标记;
int position():返回Buffer的position,当前索引位置;
Buffer position(new position):设置Buffer的position值,返回新position值的Buffer对象;
int remaining():返回当前位置和limit界限之间的元素个数;
Buffer reset():将位置position定位到mark的位置,返回新的Buffer对象;
Buffer rewind():将position当前位置设置为0,取消mark,返回新的Buffer对象;
put():往Buffer中写入数据;
get():从Buffer中读取数据;
flip():将limit设置为position位置,把position设置为0,标识Buffer装入数据结束,为从Buffer读取数据准备;
clear():将position设置为0,limit设置为Buffer大小capacity位置,为往Buffer装入数据做准备,该方法不会清空Buffer里的数据,依然可以读取里面的数据。