public abstract class AbstractByteBuf extends ByteBuf
| 限定符 | 构造器和说明 | 
|---|---|
protected  | 
AbstractByteBuf(int maxCapacity)  | 
| 限定符和类型 | 方法和说明 | 
|---|---|
protected abstract byte | 
_getByte(int index)  | 
protected abstract int | 
_getInt(int index)  | 
protected abstract long | 
_getLong(int index)  | 
protected abstract short | 
_getShort(int index)  | 
protected abstract int | 
_getUnsignedMedium(int index)  | 
protected abstract void | 
_setByte(int index,
        int value)  | 
protected abstract void | 
_setInt(int index,
       int value)  | 
protected abstract void | 
_setLong(int index,
        long value)  | 
protected abstract void | 
_setMedium(int index,
          int value)  | 
protected abstract void | 
_setShort(int index,
         int value)  | 
protected void | 
adjustMarkers(int decrement)  | 
int | 
bytesBefore(byte value)
Locates the first occurrence of the specified  
value in this
 buffer. | 
int | 
bytesBefore(int length,
           byte value)
Locates the first occurrence of the specified  
value in this
 buffer. | 
int | 
bytesBefore(int index,
           int length,
           byte value)
Locates the first occurrence of the specified  
value in this
 buffer. | 
protected void | 
checkDstIndex(int index,
             int length,
             int dstIndex,
             int dstCapacity)  | 
protected void | 
checkIndex(int index)  | 
protected void | 
checkIndex(int index,
          int fieldLength)  | 
protected void | 
checkNewCapacity(int newCapacity)  | 
protected void | 
checkReadableBytes(int minimumReadableBytes)
Throws an  
IndexOutOfBoundsException if the current
 readable bytes of this buffer is less
 than the specified value. | 
protected void | 
checkSrcIndex(int index,
             int length,
             int srcIndex,
             int srcCapacity)  | 
ByteBuf | 
clear()
Sets the  
readerIndex and writerIndex of this buffer to
 0. | 
int | 
compareTo(ByteBuf that)
Compares the content of the specified buffer to the content of this
 buffer. 
 | 
ByteBuf | 
copy()
Returns a copy of this buffer's readable bytes. 
 | 
ByteBuf | 
discardReadBytes()
Discards the bytes between the 0th index and  
readerIndex. | 
ByteBuf | 
discardSomeReadBytes()
Similar to  
ByteBuf.discardReadBytes() except that this method might discard
 some, all, or none of read bytes depending on its internal implementation to reduce
 overall memory bandwidth consumption at the cost of potentially additional memory
 consumption. | 
ByteBuf | 
duplicate()
Returns a buffer which shares the whole region of this buffer. 
 | 
protected void | 
ensureAccessible()
Should be called by every method that tries to access the buffers content to check
 if the buffer was released before. 
 | 
ByteBuf | 
ensureWritable(int minWritableBytes)
Makes sure the number of the writable bytes
 is equal to or greater than the specified value. 
 | 
int | 
ensureWritable(int minWritableBytes,
              boolean force)
Tries to make sure the number of the writable bytes
 is equal to or greater than the specified value. 
 | 
boolean | 
equals(java.lang.Object o)
Determines if the content of the specified buffer is identical to the
 content of this array. 
 | 
int | 
forEachByte(ByteBufProcessor processor)
Iterates over the readable bytes of this buffer with the specified  
processor in ascending order. | 
int | 
forEachByte(int index,
           int length,
           ByteBufProcessor processor)
Iterates over the specified area of this buffer with the specified  
processor in ascending order. | 
int | 
forEachByteDesc(ByteBufProcessor processor)
Iterates over the readable bytes of this buffer with the specified  
processor in descending order. | 
int | 
forEachByteDesc(int index,
               int length,
               ByteBufProcessor processor)
Iterates over the specified area of this buffer with the specified  
processor in descending order. | 
boolean | 
getBoolean(int index)
Gets a boolean at the specified absolute (@code index) in this buffer. 
 | 
byte | 
getByte(int index)
Gets a byte at the specified absolute  
index in this buffer. | 
ByteBuf | 
getBytes(int index,
        byte[] dst)
Transfers this buffer's data to the specified destination starting at
 the specified absolute  
index. | 
ByteBuf | 
getBytes(int index,
        ByteBuf dst)
Transfers this buffer's data to the specified destination starting at
 the specified absolute  
index until the destination becomes
 non-writable. | 
ByteBuf | 
getBytes(int index,
        ByteBuf dst,
        int length)
Transfers this buffer's data to the specified destination starting at
 the specified absolute  
index. | 
char | 
getChar(int index)
Gets a 2-byte UTF-16 character at the specified absolute
  
index in this buffer. | 
double | 
getDouble(int index)
Gets a 64-bit floating point number at the specified absolute
  
index in this buffer. | 
float | 
getFloat(int index)
Gets a 32-bit floating point number at the specified absolute
  
index in this buffer. | 
int | 
getInt(int index)
Gets a 32-bit integer at the specified absolute  
index in
 this buffer. | 
long | 
getLong(int index)
Gets a 64-bit long integer at the specified absolute  
index in
 this buffer. | 
int | 
getMedium(int index)
Gets a 24-bit medium integer at the specified absolute  
index in
 this buffer. | 
short | 
getShort(int index)
Gets a 16-bit short integer at the specified absolute  
index in
 this buffer. | 
short | 
getUnsignedByte(int index)
Gets an unsigned byte at the specified absolute  
index in this
 buffer. | 
long | 
getUnsignedInt(int index)
Gets an unsigned 32-bit integer at the specified absolute  
index
 in this buffer. | 
int | 
getUnsignedMedium(int index)
Gets an unsigned 24-bit medium integer at the specified absolute
  
index in this buffer. | 
int | 
getUnsignedShort(int index)
Gets an unsigned 16-bit short integer at the specified absolute
  
index in this buffer. | 
int | 
hashCode()
Returns a hash code which was calculated from the content of this
 buffer. 
 | 
int | 
indexOf(int fromIndex,
       int toIndex,
       byte value)
Locates the first occurrence of the specified  
value in this
 buffer. | 
boolean | 
isReadable()
Returns  
true
 if and only if (this.writerIndex - this.readerIndex) is greater
 than 0. | 
boolean | 
isReadable(int numBytes)
Returns  
true if and only if this buffer contains equal to or more than the specified number of elements. | 
boolean | 
isWritable()
Returns  
true
 if and only if (this.capacity - this.writerIndex) is greater
 than 0. | 
boolean | 
isWritable(int numBytes)
Returns  
true if and only if this buffer has enough room to allow writing the specified number of
 elements. | 
ByteBuf | 
markReaderIndex()
Marks the current  
readerIndex in this buffer. | 
ByteBuf | 
markWriterIndex()
Marks the current  
writerIndex in this buffer. | 
int | 
maxCapacity()
Returns the maximum allowed capacity of this buffer. 
 | 
protected void | 
maxCapacity(int maxCapacity)  | 
int | 
maxWritableBytes()
Returns the maximum possible number of writable bytes, which is equal to
  
(this.maxCapacity - this.writerIndex). | 
protected SwappedByteBuf | 
newSwappedByteBuf()
Creates a new  
SwappedByteBuf for this ByteBuf instance. | 
java.nio.ByteBuffer | 
nioBuffer()
Exposes this buffer's readable bytes as an NIO  
ByteBuffer. | 
java.nio.ByteBuffer[] | 
nioBuffers()
Exposes this buffer's readable bytes as an NIO  
ByteBuffer's. | 
ByteBuf | 
order(java.nio.ByteOrder endianness)
Returns a buffer with the specified  
endianness which shares the whole region,
 indexes, and marks of this buffer. | 
int | 
readableBytes()
Returns the number of readable bytes which is equal to
  
(this.writerIndex - this.readerIndex). | 
boolean | 
readBoolean()
Gets a boolean at the current  
readerIndex and increases
 the readerIndex by 1 in this buffer. | 
byte | 
readByte()
Gets a byte at the current  
readerIndex and increases
 the readerIndex by 1 in this buffer. | 
ByteBuf | 
readBytes(byte[] dst)
Transfers this buffer's data to the specified destination starting at
 the current  
readerIndex and increases the readerIndex
 by the number of the transferred bytes (= dst.length). | 
ByteBuf | 
readBytes(byte[] dst,
         int dstIndex,
         int length)
Transfers this buffer's data to the specified destination starting at
 the current  
readerIndex and increases the readerIndex
 by the number of the transferred bytes (= length). | 
ByteBuf | 
readBytes(ByteBuf dst)
Transfers this buffer's data to the specified destination starting at
 the current  
readerIndex until the destination becomes
 non-writable, and increases the readerIndex by the number of the
 transferred bytes. | 
ByteBuf | 
readBytes(java.nio.ByteBuffer dst)
Transfers this buffer's data to the specified destination starting at
 the current  
readerIndex until the destination's position
 reaches its limit, and increases the readerIndex by the
 number of the transferred bytes. | 
ByteBuf | 
readBytes(ByteBuf dst,
         int length)
Transfers this buffer's data to the specified destination starting at
 the current  
readerIndex and increases the readerIndex
 by the number of the transferred bytes (= length). | 
ByteBuf | 
readBytes(ByteBuf dst,
         int dstIndex,
         int length)
Transfers this buffer's data to the specified destination starting at
 the current  
readerIndex and increases the readerIndex
 by the number of the transferred bytes (= length). | 
int | 
readBytes(java.nio.channels.GatheringByteChannel out,
         int length)
Transfers this buffer's data to the specified stream starting at the
 current  
readerIndex. | 
ByteBuf | 
readBytes(int length)
Transfers this buffer's data to a newly created buffer starting at
 the current  
readerIndex and increases the readerIndex
 by the number of the transferred bytes (= length). | 
ByteBuf | 
readBytes(java.io.OutputStream out,
         int length)
Transfers this buffer's data to the specified stream starting at the
 current  
readerIndex. | 
char | 
readChar()
Gets a 2-byte UTF-16 character at the current  
readerIndex
 and increases the readerIndex by 2 in this buffer. | 
double | 
readDouble()
Gets a 64-bit floating point number at the current  
readerIndex
 and increases the readerIndex by 8 in this buffer. | 
int | 
readerIndex()
Returns the  
readerIndex of this buffer. | 
ByteBuf | 
readerIndex(int readerIndex)
Sets the  
readerIndex of this buffer. | 
float | 
readFloat()
Gets a 32-bit floating point number at the current  
readerIndex
 and increases the readerIndex by 4 in this buffer. | 
int | 
readInt()
Gets a 32-bit integer at the current  
readerIndex
 and increases the readerIndex by 4 in this buffer. | 
long | 
readLong()
Gets a 64-bit integer at the current  
readerIndex
 and increases the readerIndex by 8 in this buffer. | 
int | 
readMedium()
Gets a 24-bit medium integer at the current  
readerIndex
 and increases the readerIndex by 3 in this buffer. | 
short | 
readShort()
Gets a 16-bit short integer at the current  
readerIndex
 and increases the readerIndex by 2 in this buffer. | 
ByteBuf | 
readSlice(int length)
Returns a new slice of this buffer's sub-region starting at the current
  
readerIndex and increases the readerIndex by the size
 of the new slice (= length). | 
short | 
readUnsignedByte()
Gets an unsigned byte at the current  
readerIndex and increases
 the readerIndex by 1 in this buffer. | 
long | 
readUnsignedInt()
Gets an unsigned 32-bit integer at the current  
readerIndex
 and increases the readerIndex by 4 in this buffer. | 
int | 
readUnsignedMedium()
Gets an unsigned 24-bit medium integer at the current  
readerIndex
 and increases the readerIndex by 3 in this buffer. | 
int | 
readUnsignedShort()
Gets an unsigned 16-bit short integer at the current  
readerIndex
 and increases the readerIndex by 2 in this buffer. | 
ByteBuf | 
resetReaderIndex()
Repositions the current  
readerIndex to the marked
 readerIndex in this buffer. | 
ByteBuf | 
resetWriterIndex()
Repositions the current  
writerIndex to the marked
 writerIndex in this buffer. | 
ByteBuf | 
setBoolean(int index,
          boolean value)
Sets the specified boolean at the specified absolute  
index in this
 buffer. | 
ByteBuf | 
setByte(int index,
       int value)
Sets the specified byte at the specified absolute  
index in this
 buffer. | 
ByteBuf | 
setBytes(int index,
        byte[] src)
Transfers the specified source array's data to this buffer starting at
 the specified absolute  
index. | 
ByteBuf | 
setBytes(int index,
        ByteBuf src)
Transfers the specified source buffer's data to this buffer starting at
 the specified absolute  
index until the source buffer becomes
 unreadable. | 
ByteBuf | 
setBytes(int index,
        ByteBuf src,
        int length)
Transfers the specified source buffer's data to this buffer starting at
 the specified absolute  
index. | 
ByteBuf | 
setChar(int index,
       int value)
Sets the specified 2-byte UTF-16 character at the specified absolute
  
index in this buffer. | 
ByteBuf | 
setDouble(int index,
         double value)
Sets the specified 64-bit floating-point number at the specified
 absolute  
index in this buffer. | 
ByteBuf | 
setFloat(int index,
        float value)
Sets the specified 32-bit floating-point number at the specified
 absolute  
index in this buffer. | 
ByteBuf | 
setIndex(int readerIndex,
        int writerIndex)
Sets the  
readerIndex and writerIndex of this buffer
 in one shot. | 
ByteBuf | 
setInt(int index,
      int value)
Sets the specified 32-bit integer at the specified absolute
  
index in this buffer. | 
ByteBuf | 
setLong(int index,
       long value)
Sets the specified 64-bit long integer at the specified absolute
  
index in this buffer. | 
ByteBuf | 
setMedium(int index,
         int value)
Sets the specified 24-bit medium integer at the specified absolute
  
index in this buffer. | 
ByteBuf | 
setShort(int index,
        int value)
Sets the specified 16-bit short integer at the specified absolute
  
index in this buffer. | 
ByteBuf | 
setZero(int index,
       int length)
Fills this buffer with NUL (0x00) starting at the specified
 absolute  
index. | 
ByteBuf | 
skipBytes(int length)
Increases the current  
readerIndex by the specified
 length in this buffer. | 
ByteBuf | 
slice()
Returns a slice of this buffer's readable bytes. 
 | 
ByteBuf | 
slice(int index,
     int length)
Returns a slice of this buffer's sub-region. 
 | 
java.lang.String | 
toString()
Returns the string representation of this buffer. 
 | 
java.lang.String | 
toString(java.nio.charset.Charset charset)
Decodes this buffer's readable bytes into a string with the specified
 character set name. 
 | 
java.lang.String | 
toString(int index,
        int length,
        java.nio.charset.Charset charset)
Decodes this buffer's sub-region into a string with the specified
 character set. 
 | 
int | 
writableBytes()
Returns the number of writable bytes which is equal to
  
(this.capacity - this.writerIndex). | 
ByteBuf | 
writeBoolean(boolean value)
Sets the specified boolean at the current  
writerIndex
 and increases the writerIndex by 1 in this buffer. | 
ByteBuf | 
writeByte(int value)
Sets the specified byte at the current  
writerIndex
 and increases the writerIndex by 1 in this buffer. | 
ByteBuf | 
writeBytes(byte[] src)
Transfers the specified source array's data to this buffer starting at
 the current  
writerIndex and increases the writerIndex
 by the number of the transferred bytes (= src.length). | 
ByteBuf | 
writeBytes(byte[] src,
          int srcIndex,
          int length)
Transfers the specified source array's data to this buffer starting at
 the current  
writerIndex and increases the writerIndex
 by the number of the transferred bytes (= length). | 
ByteBuf | 
writeBytes(ByteBuf src)
Transfers the specified source buffer's data to this buffer starting at
 the current  
writerIndex until the source buffer becomes
 unreadable, and increases the writerIndex by the number of
 the transferred bytes. | 
ByteBuf | 
writeBytes(java.nio.ByteBuffer src)
Transfers the specified source buffer's data to this buffer starting at
 the current  
writerIndex until the source buffer's position
 reaches its limit, and increases the writerIndex by the
 number of the transferred bytes. | 
ByteBuf | 
writeBytes(ByteBuf src,
          int length)
Transfers the specified source buffer's data to this buffer starting at
 the current  
writerIndex and increases the writerIndex
 by the number of the transferred bytes (= length). | 
ByteBuf | 
writeBytes(ByteBuf src,
          int srcIndex,
          int length)
Transfers the specified source buffer's data to this buffer starting at
 the current  
writerIndex and increases the writerIndex
 by the number of the transferred bytes (= length). | 
int | 
writeBytes(java.io.InputStream in,
          int length)
Transfers the content of the specified stream to this buffer
 starting at the current  
writerIndex and increases the
 writerIndex by the number of the transferred bytes. | 
int | 
writeBytes(java.nio.channels.ScatteringByteChannel in,
          int length)
Transfers the content of the specified channel to this buffer
 starting at the current  
writerIndex and increases the
 writerIndex by the number of the transferred bytes. | 
ByteBuf | 
writeChar(int value)
Sets the specified 2-byte UTF-16 character at the current
  
writerIndex and increases the writerIndex by 2
 in this buffer. | 
ByteBuf | 
writeDouble(double value)
Sets the specified 64-bit floating point number at the current
  
writerIndex and increases the writerIndex by 8
 in this buffer. | 
ByteBuf | 
writeFloat(float value)
Sets the specified 32-bit floating point number at the current
  
writerIndex and increases the writerIndex by 4
 in this buffer. | 
ByteBuf | 
writeInt(int value)
Sets the specified 32-bit integer at the current  
writerIndex
 and increases the writerIndex by 4 in this buffer. | 
ByteBuf | 
writeLong(long value)
Sets the specified 64-bit long integer at the current
  
writerIndex and increases the writerIndex by 8
 in this buffer. | 
ByteBuf | 
writeMedium(int value)
Sets the specified 24-bit medium integer at the current
  
writerIndex and increases the writerIndex by 3
 in this buffer. | 
int | 
writerIndex()
Returns the  
writerIndex of this buffer. | 
ByteBuf | 
writerIndex(int writerIndex)
Sets the  
writerIndex of this buffer. | 
ByteBuf | 
writeShort(int value)
Sets the specified 16-bit short integer at the current
  
writerIndex and increases the writerIndex by 2
 in this buffer. | 
ByteBuf | 
writeZero(int length)
Fills this buffer with NUL (0x00) starting at the current
  
writerIndex and increases the writerIndex by the
 specified length. | 
alloc, array, arrayOffset, capacity, capacity, copy, getBytes, getBytes, getBytes, getBytes, getBytes, hasArray, hasMemoryAddress, internalNioBuffer, isDirect, memoryAddress, nioBuffer, nioBufferCount, nioBuffers, order, retain, retain, setBytes, setBytes, setBytes, setBytes, setBytes, unwraprefCnt, release, releasepublic int maxCapacity()
ByteBufByteBuf.capacity(int) or
 ByteBuf.ensureWritable(int), those methods will raise an
 IllegalArgumentException.maxCapacity 在类中 ByteBufprotected final void maxCapacity(int maxCapacity)
public int readerIndex()
ByteBufreaderIndex of this buffer.readerIndex 在类中 ByteBufpublic ByteBuf readerIndex(int readerIndex)
ByteBufreaderIndex of this buffer.readerIndex 在类中 ByteBufpublic int writerIndex()
ByteBufwriterIndex of this buffer.writerIndex 在类中 ByteBufpublic ByteBuf writerIndex(int writerIndex)
ByteBufwriterIndex of this buffer.writerIndex 在类中 ByteBufpublic ByteBuf setIndex(int readerIndex, int writerIndex)
ByteBufreaderIndex and writerIndex of this buffer
 in one shot.  This method is useful when you have to worry about the
 invocation order of ByteBuf.readerIndex(int) and ByteBuf.writerIndex(int)
 methods.  For example, the following code will fail:
 // Create a buffer whose readerIndex, writerIndex and capacity are // 0, 0 and 8 respectively.The following code will also fail:ByteBufbuf =Unpooled.buffer(8); // IndexOutOfBoundsException is thrown because the specified // readerIndex (2) cannot be greater than the current writerIndex (0). buf.readerIndex(2); buf.writerIndex(4);
// Create a buffer whose readerIndex, writerIndex and capacity are // 0, 8 and 8 respectively.By contrast, this method guarantees that it never throws anByteBufbuf =Unpooled.wrappedBuffer(new byte[8]); // readerIndex becomes 8. buf.readLong(); // IndexOutOfBoundsException is thrown because the specified // writerIndex (4) cannot be less than the current readerIndex (8). buf.writerIndex(4); buf.readerIndex(2);
IndexOutOfBoundsException as long as the specified
 indexes meet basic constraints, regardless what the current index
 values of the buffer are:
 // No matter what the current state of the buffer is, the following // call always succeeds as long as the capacity of the buffer is not // less than 4. buf.setIndex(2, 4);
public ByteBuf clear()
ByteBufreaderIndex and writerIndex of this buffer to
 0.
 This method is identical to setIndex(0, 0).
 
 Please note that the behavior of this method is different
 from that of NIO buffer, which sets the limit to
 the capacity of the buffer.
public boolean isReadable()
ByteBuftrue
 if and only if (this.writerIndex - this.readerIndex) is greater
 than 0.isReadable 在类中 ByteBufpublic boolean isReadable(int numBytes)
ByteBuftrue if and only if this buffer contains equal to or more than the specified number of elements.isReadable 在类中 ByteBufpublic boolean isWritable()
ByteBuftrue
 if and only if (this.capacity - this.writerIndex) is greater
 than 0.isWritable 在类中 ByteBufpublic boolean isWritable(int numBytes)
ByteBuftrue if and only if this buffer has enough room to allow writing the specified number of
 elements.isWritable 在类中 ByteBufpublic int readableBytes()
ByteBuf(this.writerIndex - this.readerIndex).readableBytes 在类中 ByteBufpublic int writableBytes()
ByteBuf(this.capacity - this.writerIndex).writableBytes 在类中 ByteBufpublic int maxWritableBytes()
ByteBuf(this.maxCapacity - this.writerIndex).maxWritableBytes 在类中 ByteBufpublic ByteBuf markReaderIndex()
ByteBufreaderIndex in this buffer.  You can
 reposition the current readerIndex to the marked
 readerIndex by calling ByteBuf.resetReaderIndex().
 The initial value of the marked readerIndex is 0.markReaderIndex 在类中 ByteBufpublic ByteBuf resetReaderIndex()
ByteBufreaderIndex to the marked
 readerIndex in this buffer.resetReaderIndex 在类中 ByteBufpublic ByteBuf markWriterIndex()
ByteBufwriterIndex in this buffer.  You can
 reposition the current writerIndex to the marked
 writerIndex by calling ByteBuf.resetWriterIndex().
 The initial value of the marked writerIndex is 0.markWriterIndex 在类中 ByteBufpublic ByteBuf resetWriterIndex()
ByteBufwriterIndex to the marked
 writerIndex in this buffer.resetWriterIndex 在类中 ByteBufpublic ByteBuf discardReadBytes()
ByteBufreaderIndex.
 It moves the bytes between readerIndex and writerIndex
 to the 0th index, and sets readerIndex and writerIndex
 to 0 and oldWriterIndex - oldReaderIndex respectively.
 Please refer to the class documentation for more detailed explanation.
discardReadBytes 在类中 ByteBufpublic ByteBuf discardSomeReadBytes()
ByteBufByteBuf.discardReadBytes() except that this method might discard
 some, all, or none of read bytes depending on its internal implementation to reduce
 overall memory bandwidth consumption at the cost of potentially additional memory
 consumption.discardSomeReadBytes 在类中 ByteBufprotected final void adjustMarkers(int decrement)
public ByteBuf ensureWritable(int minWritableBytes)
ByteBufIllegalArgumentException.ensureWritable 在类中 ByteBufminWritableBytes - the expected minimum number of writable bytespublic int ensureWritable(int minWritableBytes,
                 boolean force)
ByteBufByteBuf.ensureWritable(int),
 this method does not raise an exception but returns a code.ensureWritable 在类中 ByteBufminWritableBytes - the expected minimum number of writable bytesforce - When ByteBuf.writerIndex() + minWritableBytes > ByteBuf.maxCapacity():
        true - the capacity of the buffer is expanded to ByteBuf.maxCapacity()false - the capacity of the buffer is unchanged0 if the buffer has enough writable bytes, and its capacity is unchanged.
         1 if the buffer does not have enough bytes, and its capacity is unchanged.
         2 if the buffer has enough writable bytes, and its capacity has been increased.
         3 if the buffer does not have enough bytes, but its capacity has been
                   increased to its maximum.public ByteBuf order(java.nio.ByteOrder endianness)
ByteBufendianness which shares the whole region,
 indexes, and marks of this buffer.  Modifying the content, the indexes, or the marks of the
 returned buffer or this buffer affects each other's content, indexes, and marks.  If the
 specified endianness is identical to this buffer's byte order, this method can
 return this.  This method does not modify readerIndex or writerIndex
 of this buffer.protected SwappedByteBuf newSwappedByteBuf()
SwappedByteBuf for this ByteBuf instance.public byte getByte(int index)
ByteBufindex in this buffer.
 This method does not modify readerIndex or writerIndex of
 this buffer.protected abstract byte _getByte(int index)
public boolean getBoolean(int index)
ByteBufreaderIndex or writerIndex
 of this buffer.getBoolean 在类中 ByteBufpublic short getUnsignedByte(int index)
ByteBufindex in this
 buffer.  This method does not modify readerIndex or
 writerIndex of this buffer.getUnsignedByte 在类中 ByteBufpublic short getShort(int index)
ByteBufindex in
 this buffer.  This method does not modify readerIndex or
 writerIndex of this buffer.protected abstract short _getShort(int index)
public int getUnsignedShort(int index)
ByteBufindex in this buffer.  This method does not modify
 readerIndex or writerIndex of this buffer.getUnsignedShort 在类中 ByteBufpublic int getUnsignedMedium(int index)
ByteBufindex in this buffer.  This method does not modify
 readerIndex or writerIndex of this buffer.getUnsignedMedium 在类中 ByteBufprotected abstract int _getUnsignedMedium(int index)
public int getMedium(int index)
ByteBufindex in
 this buffer.  This method does not modify readerIndex or
 writerIndex of this buffer.public int getInt(int index)
ByteBufindex in
 this buffer.  This method does not modify readerIndex or
 writerIndex of this buffer.protected abstract int _getInt(int index)
public long getUnsignedInt(int index)
ByteBufindex
 in this buffer.  This method does not modify readerIndex or
 writerIndex of this buffer.getUnsignedInt 在类中 ByteBufpublic long getLong(int index)
ByteBufindex in
 this buffer.  This method does not modify readerIndex or
 writerIndex of this buffer.protected abstract long _getLong(int index)
public char getChar(int index)
ByteBufindex in this buffer.  This method does not modify
 readerIndex or writerIndex of this buffer.public float getFloat(int index)
ByteBufindex in this buffer.  This method does not modify
 readerIndex or writerIndex of this buffer.public double getDouble(int index)
ByteBufindex in this buffer.  This method does not modify
 readerIndex or writerIndex of this buffer.public ByteBuf getBytes(int index, byte[] dst)
ByteBufindex.
 This method does not modify readerIndex or writerIndex of
 this bufferpublic ByteBuf getBytes(int index, ByteBuf dst)
ByteBufindex until the destination becomes
 non-writable.  This method is basically same with
 ByteBuf.getBytes(int, ByteBuf, int, int), except that this
 method increases the writerIndex of the destination by the
 number of the transferred bytes while
 ByteBuf.getBytes(int, ByteBuf, int, int) does not.
 This method does not modify readerIndex or writerIndex of
 the source buffer (i.e. this).public ByteBuf getBytes(int index, ByteBuf dst, int length)
ByteBufindex.  This method is basically same
 with ByteBuf.getBytes(int, ByteBuf, int, int), except that this
 method increases the writerIndex of the destination by the
 number of the transferred bytes while
 ByteBuf.getBytes(int, ByteBuf, int, int) does not.
 This method does not modify readerIndex or writerIndex of
 the source buffer (i.e. this).public ByteBuf setByte(int index, int value)
ByteBufindex in this
 buffer.  The 24 high-order bits of the specified value are ignored.
 This method does not modify readerIndex or writerIndex of
 this buffer.protected abstract void _setByte(int index,
            int value)
public ByteBuf setBoolean(int index, boolean value)
ByteBufindex in this
 buffer.
 This method does not modify readerIndex or writerIndex of
 this buffer.setBoolean 在类中 ByteBufpublic ByteBuf setShort(int index, int value)
ByteBufindex in this buffer.  The 16 high-order bits of the specified
 value are ignored.
 This method does not modify readerIndex or writerIndex of
 this buffer.protected abstract void _setShort(int index,
             int value)
public ByteBuf setChar(int index, int value)
ByteBufindex in this buffer.
 The 16 high-order bits of the specified value are ignored.
 This method does not modify readerIndex or writerIndex of
 this buffer.public ByteBuf setMedium(int index, int value)
ByteBufindex in this buffer.  Please note that the most significant
 byte is ignored in the specified value.
 This method does not modify readerIndex or writerIndex of
 this buffer.protected abstract void _setMedium(int index,
              int value)
public ByteBuf setInt(int index, int value)
ByteBufindex in this buffer.
 This method does not modify readerIndex or writerIndex of
 this buffer.protected abstract void _setInt(int index,
           int value)
public ByteBuf setFloat(int index, float value)
ByteBufindex in this buffer.
 This method does not modify readerIndex or writerIndex of
 this buffer.public ByteBuf setLong(int index, long value)
ByteBufindex in this buffer.
 This method does not modify readerIndex or writerIndex of
 this buffer.protected abstract void _setLong(int index,
            long value)
public ByteBuf setDouble(int index, double value)
ByteBufindex in this buffer.
 This method does not modify readerIndex or writerIndex of
 this buffer.public ByteBuf setBytes(int index, byte[] src)
ByteBufindex.
 This method does not modify readerIndex or writerIndex of
 this buffer.public ByteBuf setBytes(int index, ByteBuf src)
ByteBufindex until the source buffer becomes
 unreadable.  This method is basically same with
 ByteBuf.setBytes(int, ByteBuf, int, int), except that this
 method increases the readerIndex of the source buffer by
 the number of the transferred bytes while
 ByteBuf.setBytes(int, ByteBuf, int, int) does not.
 This method does not modify readerIndex or writerIndex of
 the source buffer (i.e. this).public ByteBuf setBytes(int index, ByteBuf src, int length)
ByteBufindex.  This method is basically same
 with ByteBuf.setBytes(int, ByteBuf, int, int), except that this
 method increases the readerIndex of the source buffer by
 the number of the transferred bytes while
 ByteBuf.setBytes(int, ByteBuf, int, int) does not.
 This method does not modify readerIndex or writerIndex of
 the source buffer (i.e. this).public ByteBuf setZero(int index, int length)
ByteBufindex.
 This method does not modify readerIndex or writerIndex of
 this buffer.public byte readByte()
ByteBufreaderIndex and increases
 the readerIndex by 1 in this buffer.public boolean readBoolean()
ByteBufreaderIndex and increases
 the readerIndex by 1 in this buffer.readBoolean 在类中 ByteBufpublic short readUnsignedByte()
ByteBufreaderIndex and increases
 the readerIndex by 1 in this buffer.readUnsignedByte 在类中 ByteBufpublic short readShort()
ByteBufreaderIndex
 and increases the readerIndex by 2 in this buffer.public int readUnsignedShort()
ByteBufreaderIndex
 and increases the readerIndex by 2 in this buffer.readUnsignedShort 在类中 ByteBufpublic int readMedium()
ByteBufreaderIndex
 and increases the readerIndex by 3 in this buffer.readMedium 在类中 ByteBufpublic int readUnsignedMedium()
ByteBufreaderIndex
 and increases the readerIndex by 3 in this buffer.readUnsignedMedium 在类中 ByteBufpublic int readInt()
ByteBufreaderIndex
 and increases the readerIndex by 4 in this buffer.public long readUnsignedInt()
ByteBufreaderIndex
 and increases the readerIndex by 4 in this buffer.readUnsignedInt 在类中 ByteBufpublic long readLong()
ByteBufreaderIndex
 and increases the readerIndex by 8 in this buffer.public char readChar()
ByteBufreaderIndex
 and increases the readerIndex by 2 in this buffer.public float readFloat()
ByteBufreaderIndex
 and increases the readerIndex by 4 in this buffer.public double readDouble()
ByteBufreaderIndex
 and increases the readerIndex by 8 in this buffer.readDouble 在类中 ByteBufpublic ByteBuf readBytes(int length)
ByteBufreaderIndex and increases the readerIndex
 by the number of the transferred bytes (= length).
 The returned buffer's readerIndex and writerIndex are
 0 and length respectively.public ByteBuf readSlice(int length)
ByteBufreaderIndex and increases the readerIndex by the size
 of the new slice (= length).
 
 Also be aware that this method will NOT call ByteBuf.retain() and so the
 reference count will NOT be increased.
public ByteBuf readBytes(byte[] dst, int dstIndex, int length)
ByteBufreaderIndex and increases the readerIndex
 by the number of the transferred bytes (= length).public ByteBuf readBytes(byte[] dst)
ByteBufreaderIndex and increases the readerIndex
 by the number of the transferred bytes (= dst.length).public ByteBuf readBytes(ByteBuf dst)
ByteBufreaderIndex until the destination becomes
 non-writable, and increases the readerIndex by the number of the
 transferred bytes.  This method is basically same with
 ByteBuf.readBytes(ByteBuf, int, int), except that this method
 increases the writerIndex of the destination by the number of
 the transferred bytes while ByteBuf.readBytes(ByteBuf, int, int)
 does not.public ByteBuf readBytes(ByteBuf dst, int length)
ByteBufreaderIndex and increases the readerIndex
 by the number of the transferred bytes (= length).  This method
 is basically same with ByteBuf.readBytes(ByteBuf, int, int),
 except that this method increases the writerIndex of the
 destination by the number of the transferred bytes (= length)
 while ByteBuf.readBytes(ByteBuf, int, int) does not.public ByteBuf readBytes(ByteBuf dst, int dstIndex, int length)
ByteBufreaderIndex and increases the readerIndex
 by the number of the transferred bytes (= length).public ByteBuf readBytes(java.nio.ByteBuffer dst)
ByteBufreaderIndex until the destination's position
 reaches its limit, and increases the readerIndex by the
 number of the transferred bytes.public int readBytes(java.nio.channels.GatheringByteChannel out,
            int length)
              throws java.io.IOException
ByteBufreaderIndex.public ByteBuf readBytes(java.io.OutputStream out, int length) throws java.io.IOException
ByteBufreaderIndex.public ByteBuf skipBytes(int length)
ByteBufreaderIndex by the specified
 length in this buffer.public ByteBuf writeBoolean(boolean value)
ByteBufwriterIndex
 and increases the writerIndex by 1 in this buffer.writeBoolean 在类中 ByteBufpublic ByteBuf writeByte(int value)
ByteBufwriterIndex
 and increases the writerIndex by 1 in this buffer.
 The 24 high-order bits of the specified value are ignored.public ByteBuf writeShort(int value)
ByteBufwriterIndex and increases the writerIndex by 2
 in this buffer.  The 16 high-order bits of the specified value are ignored.writeShort 在类中 ByteBufpublic ByteBuf writeMedium(int value)
ByteBufwriterIndex and increases the writerIndex by 3
 in this buffer.writeMedium 在类中 ByteBufpublic ByteBuf writeInt(int value)
ByteBufwriterIndex
 and increases the writerIndex by 4 in this buffer.public ByteBuf writeLong(long value)
ByteBufwriterIndex and increases the writerIndex by 8
 in this buffer.public ByteBuf writeChar(int value)
ByteBufwriterIndex and increases the writerIndex by 2
 in this buffer.  The 16 high-order bits of the specified value are ignored.public ByteBuf writeFloat(float value)
ByteBufwriterIndex and increases the writerIndex by 4
 in this buffer.writeFloat 在类中 ByteBufpublic ByteBuf writeDouble(double value)
ByteBufwriterIndex and increases the writerIndex by 8
 in this buffer.writeDouble 在类中 ByteBufpublic ByteBuf writeBytes(byte[] src, int srcIndex, int length)
ByteBufwriterIndex and increases the writerIndex
 by the number of the transferred bytes (= length).writeBytes 在类中 ByteBufsrcIndex - the first index of the sourcelength - the number of bytes to transferpublic ByteBuf writeBytes(byte[] src)
ByteBufwriterIndex and increases the writerIndex
 by the number of the transferred bytes (= src.length).writeBytes 在类中 ByteBufpublic ByteBuf writeBytes(ByteBuf src)
ByteBufwriterIndex until the source buffer becomes
 unreadable, and increases the writerIndex by the number of
 the transferred bytes.  This method is basically same with
 ByteBuf.writeBytes(ByteBuf, int, int), except that this method
 increases the readerIndex of the source buffer by the number of
 the transferred bytes while ByteBuf.writeBytes(ByteBuf, int, int)
 does not.writeBytes 在类中 ByteBufpublic ByteBuf writeBytes(ByteBuf src, int length)
ByteBufwriterIndex and increases the writerIndex
 by the number of the transferred bytes (= length).  This method
 is basically same with ByteBuf.writeBytes(ByteBuf, int, int),
 except that this method increases the readerIndex of the source
 buffer by the number of the transferred bytes (= length) while
 ByteBuf.writeBytes(ByteBuf, int, int) does not.writeBytes 在类中 ByteBuflength - the number of bytes to transferpublic ByteBuf writeBytes(ByteBuf src, int srcIndex, int length)
ByteBufwriterIndex and increases the writerIndex
 by the number of the transferred bytes (= length).writeBytes 在类中 ByteBufsrcIndex - the first index of the sourcelength - the number of bytes to transferpublic ByteBuf writeBytes(java.nio.ByteBuffer src)
ByteBufwriterIndex until the source buffer's position
 reaches its limit, and increases the writerIndex by the
 number of the transferred bytes.writeBytes 在类中 ByteBufpublic int writeBytes(java.io.InputStream in,
             int length)
               throws java.io.IOException
ByteBufwriterIndex and increases the
 writerIndex by the number of the transferred bytes.writeBytes 在类中 ByteBuflength - the number of bytes to transferjava.io.IOException - if the specified stream threw an exception during I/Opublic int writeBytes(java.nio.channels.ScatteringByteChannel in,
             int length)
               throws java.io.IOException
ByteBufwriterIndex and increases the
 writerIndex by the number of the transferred bytes.writeBytes 在类中 ByteBuflength - the maximum number of bytes to transferjava.io.IOException - if the specified channel threw an exception during I/Opublic ByteBuf writeZero(int length)
ByteBufwriterIndex and increases the writerIndex by the
 specified length.public ByteBuf copy()
ByteBufbuf.copy(buf.readerIndex(), buf.readableBytes()).
 This method does not modify readerIndex or writerIndex of
 this buffer.public ByteBuf duplicate()
ByteBufreaderIndex or writerIndex of
 this buffer.
 
 The reader and writer marks will not be duplicated. Also be aware that this method will
 NOT call ByteBuf.retain() and so the reference count will NOT be increased.
duplicate 在类中 ByteBufByteBuf.slice().
 However this buffer will share the capacity of the underlying buffer, and therefore allows access to all of the
 underlying content if necessary.public ByteBuf slice()
ByteBufbuf.slice(buf.readerIndex(), buf.readableBytes()).
 This method does not modify readerIndex or writerIndex of
 this buffer.
 
 Also be aware that this method will NOT call ByteBuf.retain() and so the
 reference count will NOT be increased.
public ByteBuf slice(int index, int length)
ByteBufreaderIndex or writerIndex of
 this buffer.
 
 Also be aware that this method will NOT call ByteBuf.retain() and so the
 reference count will NOT be increased.
public java.nio.ByteBuffer nioBuffer()
ByteBufByteBuffer. The returned buffer
 either share or contains the copied content of this buffer, while changing the position
 and limit of the returned NIO buffer does not affect the indexes and marks of this buffer.
 This method is identical to buf.nioBuffer(buf.readerIndex(), buf.readableBytes()).
 This method does not modify readerIndex or writerIndex of this buffer.
 Please note that the returned NIO buffer will not see the changes of this buffer if this buffer
 is a dynamic buffer and it adjusted its capacity.public java.nio.ByteBuffer[] nioBuffers()
ByteBufByteBuffer's. The returned buffer
 either share or contains the copied content of this buffer, while changing the position
 and limit of the returned NIO buffer does not affect the indexes and marks of this buffer.
 This method does not modify readerIndex or writerIndex of this buffer.
 Please note that the returned NIO buffer will not see the changes of this buffer if this buffer
 is a dynamic buffer and it adjusted its capacity.public java.lang.String toString(java.nio.charset.Charset charset)
ByteBufbuf.toString(buf.readerIndex(), buf.readableBytes(), charsetName).
 This method does not modify readerIndex or writerIndex of
 this buffer.public java.lang.String toString(int index,
                        int length,
                        java.nio.charset.Charset charset)
ByteBufreaderIndex or
 writerIndex of this buffer.public int indexOf(int fromIndex,
          int toIndex,
          byte value)
ByteBufvalue in this
 buffer.  The search takes place from the specified fromIndex
 (inclusive)  to the specified toIndex (exclusive).
 
 If fromIndex is greater than toIndex, the search is
 performed in a reversed order.
 
 This method does not modify readerIndex or writerIndex of
 this buffer.
public int bytesBefore(byte value)
ByteBufvalue in this
 buffer.  The search takes place from the current readerIndex
 (inclusive) to the current writerIndex (exclusive).
 
 This method does not modify readerIndex or writerIndex of
 this buffer.
bytesBefore 在类中 ByteBufreaderIndex
         and the first occurrence if found. -1 otherwise.public int bytesBefore(int length,
              byte value)
ByteBufvalue in this
 buffer.  The search starts from the current readerIndex
 (inclusive) and lasts for the specified length.
 
 This method does not modify readerIndex or writerIndex of
 this buffer.
bytesBefore 在类中 ByteBufreaderIndex
         and the first occurrence if found. -1 otherwise.public int bytesBefore(int index,
              int length,
              byte value)
ByteBufvalue in this
 buffer.  The search starts from the specified index (inclusive)
 and lasts for the specified length.
 
 This method does not modify readerIndex or writerIndex of
 this buffer.
bytesBefore 在类中 ByteBufindex
         and the first occurrence if found. -1 otherwise.public int forEachByte(ByteBufProcessor processor)
ByteBufprocessor in ascending order.forEachByte 在类中 ByteBuf-1 if the processor iterated to or beyond the end of the readable bytes.
         The last-visited index If the ByteBufProcessor.process(byte) returned false.public int forEachByte(int index,
              int length,
              ByteBufProcessor processor)
ByteBufprocessor in ascending order.
 (i.e. index, (index + 1),  .. (index + length - 1))forEachByte 在类中 ByteBuf-1 if the processor iterated to or beyond the end of the specified area.
         The last-visited index If the ByteBufProcessor.process(byte) returned false.public int forEachByteDesc(ByteBufProcessor processor)
ByteBufprocessor in descending order.forEachByteDesc 在类中 ByteBuf-1 if the processor iterated to or beyond the beginning of the readable bytes.
         The last-visited index If the ByteBufProcessor.process(byte) returned false.public int forEachByteDesc(int index,
                  int length,
                  ByteBufProcessor processor)
ByteBufprocessor in descending order.
 (i.e. (index + length - 1), (index + length - 2), ... index)forEachByteDesc 在类中 ByteBuf-1 if the processor iterated to or beyond the beginning of the specified area.
         The last-visited index If the ByteBufProcessor.process(byte) returned false.public int hashCode()
ByteBufpublic boolean equals(java.lang.Object o)
ByteBufByteBuf.readerIndex() nor
 ByteBuf.writerIndex().  This method also returns false for
 null and an object which is not an instance of
 ByteBuf type.public int compareTo(ByteBuf that)
ByteBufstrcmp,
 memcmp and String.compareTo(String).public java.lang.String toString()
ByteBufByteBuf.readerIndex(),
 ByteBuf.writerIndex() and ByteBuf.capacity().protected final void checkIndex(int index)
protected final void checkIndex(int index,
              int fieldLength)
protected final void checkSrcIndex(int index,
                 int length,
                 int srcIndex,
                 int srcCapacity)
protected final void checkDstIndex(int index,
                 int length,
                 int dstIndex,
                 int dstCapacity)
protected final void checkReadableBytes(int minimumReadableBytes)
IndexOutOfBoundsException if the current
 readable bytes of this buffer is less
 than the specified value.protected final void checkNewCapacity(int newCapacity)
protected final void ensureAccessible()