- java.lang.Object
-
- org.redkale.util.ByteArray
-
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 voidbackCount()count减一,调用前须保证count大于0ByteArrayclear()清空数据,将count置为0,并不清掉byte[]的内容byte[]content()直接获取全部数据, 实际数据需要根据length长度来截取voidcopyTo(byte[] buf)将buf内容覆盖到本对象内容中booleandeepEquals(byte[] bytes)比较内容是否相同booleandeepEquals(byte[] bytes, int offset, int length)比较内容是否相同booleandeepEquals(ByteArray array)比较内容是否相同booleandeepEquals(ByteTuple tuple)比较内容是否相同voiddirectFrom(byte[] content, int count)将content的内容直接给本对象voiddirectFrom(ByteArray array)将array的内容引用给本对象voiddirectTo(ByteArray array)将本对象的内容引用复制给arraybooleanequals(Object obj)比较内容是否相同byte[]expand(int len)byteget(int index)获取指定位置的byte值,须确保0 <= index < lengthbyte[]getBytes()获取byte[]byte[]getBytes(int offset, int length)获取byte[]chargetChar(int offset)获取指定位置的char值,须确保0 <= offset+2 < lengthdoublegetDouble(int offset)获取指定位置的double值,须确保0 <= offset+8 < lengthfloatgetFloat(int offset)获取指定位置的float值,须确保0 <= offset+4 < lengthintgetInt(int offset)获取指定位置的int值,须确保0 <= offset+4 < lengthbytegetLastByte()获取最后一个字节值,调用前须保证count大于0longgetLong(int offset)获取指定位置的long值,须确保0 <= offset+8 < lengthintgetShort(int offset)获取指定位置的short值,须确保0 <= offset+2 < lengthUint128getUint128(int offset)获取指定位置的Uint128值,须确保0 <= offset+16 < lengthinthashCode()intindexOf(byte value)查找指定值第一次出现的位置,没有返回-1intindexOf(int offset, byte value)从指定的起始位置查询value值出现的位置,没有返回-1intindexOf(int offset, char value)从指定的起始位置查询value值出现的位置,没有返回-1intindexOf(int offset, int limit, byte value)从指定的起始位置和长度查询value值出现的位置,没有返回-1intindexOf(int offset, int limit, char value)从指定的起始位置和长度查询value值出现的位置,没有返回-1booleanisEmpty()判断内容是否为空intlastIndexOf(byte value)查找指定值第一次出现的位置,没有返回-1intlastIndexOf(char value)查找指定值第一次出现的位置,没有返回-1intlastIndexOf(int offset, byte value)从指定的起始位置查询value值出现的位置,没有返回-1intlastIndexOf(int offset, char value)从指定的起始位置查询value值出现的位置,没有返回-1intlastIndexOf(int offset, int length, byte value)从指定的起始位置和长度查询value值出现的位置,没有返回-1intlastIndexOf(int offset, int length, char value)从指定的起始位置和长度查询value值出现的位置,没有返回-1intlength()获取字节长度OutputStreamnewOutputStream()生成一个OutputStreamintoffset()ByteArrayposition(int pos)设置count的新位置ByteArrayput(byte value)写入一个byte值ByteArrayput(byte... values)写入一组byte值ByteArrayput(byte[] values, int offset, int length)写入一组byte值ByteArrayput(byte value1, byte value2)写入两个byte值ByteArrayput(byte value1, byte value2, byte value3)写入三个byte值ByteArrayput(int offset, byte... values)指定位置写入一组byte值, content.length 必须不能小于offset+values.lengthByteArrayput(int poffset, byte[] values, int offset, int length)写入一组byte值, content.length 必须不能小于poffset+lengthvoidput(ByteBuffer buffer)将ByteBuffer的内容读取到本对象中ByteArrayput(ByteBuffer buffer, int length)写入ByteBuffer指定长度的数据ByteArrayput(ByteArray array, int offset, int length)写入ByteArray中的一部分ByteArrayput(ByteTuple tuple)写入一组byte值ByteArrayputByte(char value)ByteArrayputByte(int value)ByteArrayputByte(int offset, byte value)写入一个byte值, content.length 必须不能小于offset+1ByteArrayputByte(int offset, int value)写入一个byte值, content.length 必须不能小于offset+1ByteArrayputByte(short value)ByteArrayputChar(char value)写入一个char值ByteArrayputChar(int offset, char value)写入一个char值, content.length 必须不能小于offset+2ByteArrayputDouble(double value)写入一个double值ByteArrayputDouble(int offset, double value)指定位置写入一个double值, content.length 必须不能小于offset+8ByteArrayputFloat(float value)写入一个float值ByteArrayputFloat(int offset, float value)指定位置写入一个float值, content.length 必须不能小于offset+4ByteArrayputInt(int value)写入一个int值ByteArrayputInt(int offset, int value)指定位置写入一个int值, content.length 必须不能小于offset+4ByteArrayputLong(int offset, long value)指定位置写入一个long值, content.length 必须不能小于offset+8ByteArrayputLong(long value)写入一个long值ByteArrayputMedium(int value)写入一个3字节的int值ByteArrayputMedium(int offset, int value)指定位置写入一个3字节的int值, content.length 必须不能小于offset+3ByteArrayputPlaceholder(int length)ByteArrayputShort(char value)写入一个short值ByteArrayputShort(int value)写入一个short值ByteArrayputShort(int offset, short value)写入一个short值, content.length 必须不能小于offset+2ByteArrayputShort(short value)写入一个short值ByteArrayputUint128(int offset, Uint128 value)指定位置写入一个Uint128值, content.length 必须不能小于offset+16ByteArrayputUint128(Uint128 value)写入一个Uint128值ByteArrayputUnsignedInt(int offset, long value)指定位置写入一个 无符号int值, content.length 必须不能小于offset+4ByteArrayputUnsignedInt(long value)写入一个int值ByteArrayputUnsignedMedium(int value)写入一个3字节的int值ByteArrayputUnsignedMedium(int offset, int value)指定位置写入一个3字节的int值, content.length 必须不能小于offset+3ByteArrayputUnsignedShort(int value)写入一个short值ByteArrayputUnsignedShort(int offset, int value)写入一个无符号short值, content.length 必须不能小于offset+2voidputWithoutCheck(byte value)写入一个byte值booleanrecycle()ByteArrayremoveLastByte()移除最后一个字节ReadableByteChanneltoChannel()StringtoString()StringtoString(boolean latin1, int offset, int len, Charset charset)将指定的起始位置和长度按指定字符集转成字符串StringtoString(boolean latin1, Charset charset)按指定字符集转成字符串StringtoString(int offset, int len, Charset charset)将指定的起始位置和长度按指定字符集转成字符串StringtoString(int offset, Charset charset)将指定的起始位置按指定字符集转成字符串StringtoString(Charset charset)按指定字符集转成字符串StringtoUTF8String()ByteBufferwrapByteBuffer()
-
-
-
构造器详细资料
-
ByteArray
public ByteArray()
-
ByteArray
public ByteArray(int size)
-
ByteArray
public ByteArray(ByteTuple tuple)
-
ByteArray
public ByteArray(byte[] bs)
-
ByteArray
public ByteArray(byte[] bs, int offset, int length)
-
-
方法详细资料
-
clear
public ByteArray clear()
清空数据,将count置为0,并不清掉byte[]的内容- 返回:
- ByteArray 是否相同
-
recycle
public boolean recycle()
-
expand
public byte[] expand(int len)
-
wrapByteBuffer
public ByteBuffer wrapByteBuffer()
-
toChannel
public ReadableByteChannel toChannel()
-
position
public ByteArray position(int pos)
设置count的新位置- 参数:
pos- 新位置- 返回:
- ByteArray
-
newOutputStream
public OutputStream newOutputStream()
生成一个OutputStream- 返回:
- OutputStream
-
deepEquals
public boolean deepEquals(byte[] bytes)
比较内容是否相同- 参数:
bytes- 待比较内容- 返回:
- 是否相同
-
deepEquals
public boolean deepEquals(byte[] bytes, int offset, int length)比较内容是否相同- 参数:
bytes- 待比较内容offset- 偏移量length- 长度- 返回:
- 是否相同
-
deepEquals
public boolean deepEquals(ByteTuple tuple)
比较内容是否相同- 参数:
tuple- 待比较内容- 返回:
- 是否相同
-
deepEquals
public boolean deepEquals(ByteArray array)
比较内容是否相同- 参数:
array- 待比较内容- 返回:
- 是否相同
-
isEmpty
public boolean isEmpty()
判断内容是否为空- 返回:
- 是否为空
-
get
public byte get(int index)
获取指定位置的byte值,须确保0 <= index < length- 参数:
index- 位置- 返回:
- byte值
-
getChar
public char getChar(int offset)
获取指定位置的char值,须确保0 <= offset+2 < length- 参数:
offset- 位置- 返回:
- short值
-
getShort
public int getShort(int offset)
获取指定位置的short值,须确保0 <= offset+2 < length- 参数:
offset- 位置- 返回:
- short值
-
getInt
public int getInt(int offset)
获取指定位置的int值,须确保0 <= offset+4 < length- 参数:
offset- 位置- 返回:
- int值
-
getFloat
public float getFloat(int offset)
获取指定位置的float值,须确保0 <= offset+4 < length- 参数:
offset- 位置- 返回:
- float值
-
getLong
public long getLong(int offset)
获取指定位置的long值,须确保0 <= offset+8 < length- 参数:
offset- 位置- 返回:
- long值
-
getDouble
public double getDouble(int offset)
获取指定位置的double值,须确保0 <= offset+8 < length- 参数:
offset- 位置- 返回:
- double值
-
getUint128
public Uint128 getUint128(int offset)
获取指定位置的Uint128值,须确保0 <= offset+16 < length- 参数:
offset- 位置- 返回:
- Uint128值
-
getLastByte
public byte getLastByte()
获取最后一个字节值,调用前须保证count大于0- 返回:
- byte值
-
backCount
public void backCount()
count减一,调用前须保证count大于0
-
copyTo
public void copyTo(byte[] buf)
将buf内容覆盖到本对象内容中- 参数:
buf- 目标容器
-
directFrom
public void directFrom(ByteArray array)
将array的内容引用给本对象- 参数:
array- ByteArray
-
directFrom
public void directFrom(byte[] content, int count)将content的内容直接给本对象- 参数:
content- 内容count- 长度
-
directTo
public void directTo(ByteArray array)
将本对象的内容引用复制给array- 参数:
array- ByteArray
-
content
public byte[] content()
直接获取全部数据, 实际数据需要根据length长度来截取
-
getBytes
public byte[] getBytes()
获取byte[]- 返回:
- byte[]
-
getBytes
public byte[] getBytes(int offset, int length)获取byte[]- 参数:
offset- 偏移位length- 长度- 返回:
- byte[]
-
indexOf
public int indexOf(byte value)
查找指定值第一次出现的位置,没有返回-1- 参数:
value- 查询值- 返回:
- 所在位置
-
indexOf
public int indexOf(int offset, char value)从指定的起始位置查询value值出现的位置,没有返回-1- 参数:
offset- 起始位置value- 查询值- 返回:
- 所在位置
-
indexOf
public int indexOf(int offset, byte value)从指定的起始位置查询value值出现的位置,没有返回-1- 参数:
offset- 起始位置value- 查询值- 返回:
- 所在位置
-
indexOf
public int indexOf(int offset, int limit, char value)从指定的起始位置和长度查询value值出现的位置,没有返回-1- 参数:
offset- 起始位置limit- 长度限制value- 查询值- 返回:
- 所在位置
-
indexOf
public int indexOf(int offset, int limit, byte value)从指定的起始位置和长度查询value值出现的位置,没有返回-1- 参数:
offset- 起始位置limit- 长度限制value- 查询值- 返回:
- 所在位置
-
lastIndexOf
public int lastIndexOf(byte value)
查找指定值第一次出现的位置,没有返回-1- 参数:
value- 查询值- 返回:
- 所在位置
-
lastIndexOf
public int lastIndexOf(char value)
查找指定值第一次出现的位置,没有返回-1- 参数:
value- 查询值- 返回:
- 所在位置
-
lastIndexOf
public int lastIndexOf(int offset, char value)从指定的起始位置查询value值出现的位置,没有返回-1- 参数:
offset- 起始位置value- 查询值- 返回:
- 所在位置
-
lastIndexOf
public int lastIndexOf(int offset, byte value)从指定的起始位置查询value值出现的位置,没有返回-1- 参数:
offset- 起始位置value- 查询值- 返回:
- 所在位置
-
lastIndexOf
public int lastIndexOf(int offset, int length, char value)从指定的起始位置和长度查询value值出现的位置,没有返回-1- 参数:
offset- 起始位置length- 长度限制value- 查询值- 返回:
- 所在位置
-
lastIndexOf
public int lastIndexOf(int offset, int length, byte value)从指定的起始位置和长度查询value值出现的位置,没有返回-1- 参数:
offset- 起始位置length- 长度限制value- 查询值- 返回:
- 所在位置
-
removeLastByte
public ByteArray removeLastByte()
移除最后一个字节- 返回:
- ByteArray
-
putPlaceholder
public ByteArray putPlaceholder(int length)
-
putChar
public ByteArray putChar(char value)
写入一个char值- 参数:
value- int值- 返回:
- ByteArray
-
putChar
public ByteArray putChar(int offset, char value)
写入一个char值, content.length 必须不能小于offset+2- 参数:
offset- 偏移量value- char值- 返回:
- ByteArray
-
putShort
public ByteArray putShort(short value)
写入一个short值- 参数:
value- short值- 返回:
- ByteArray
-
putShort
public ByteArray putShort(char value)
写入一个short值- 参数:
value- short值- 返回:
- ByteArray
-
putShort
public ByteArray putShort(int value)
写入一个short值- 参数:
value- short值- 返回:
- ByteArray
-
putUnsignedShort
public ByteArray putUnsignedShort(int value)
写入一个short值- 参数:
value- short值- 返回:
- ByteArray
-
putUnsignedShort
public ByteArray putUnsignedShort(int offset, int value)
写入一个无符号short值, content.length 必须不能小于offset+2- 参数:
offset- 偏移量value- short值- 返回:
- ByteArray
-
putShort
public ByteArray putShort(int offset, short value)
写入一个short值, content.length 必须不能小于offset+2- 参数:
offset- 偏移量value- short值- 返回:
- ByteArray
-
putMedium
public ByteArray putMedium(int value)
写入一个3字节的int值- 参数:
value- int值- 返回:
- ByteArray
-
putMedium
public ByteArray putMedium(int offset, int value)
指定位置写入一个3字节的int值, content.length 必须不能小于offset+3- 参数:
offset- 偏移量value- int值- 返回:
- ByteArray
-
putUnsignedMedium
public ByteArray putUnsignedMedium(int value)
写入一个3字节的int值- 参数:
value- int值- 返回:
- ByteArray
-
putUnsignedMedium
public ByteArray putUnsignedMedium(int offset, int value)
指定位置写入一个3字节的int值, content.length 必须不能小于offset+3- 参数:
offset- 偏移量value- int值- 返回:
- ByteArray
-
putInt
public ByteArray putInt(int value)
写入一个int值- 参数:
value- int值- 返回:
- ByteArray
-
putUnsignedInt
public ByteArray putUnsignedInt(long value)
写入一个int值- 参数:
value- int值- 返回:
- ByteArray
-
putInt
public ByteArray putInt(int offset, int value)
指定位置写入一个int值, content.length 必须不能小于offset+4- 参数:
offset- 偏移量value- int值- 返回:
- ByteArray
-
putUnsignedInt
public ByteArray putUnsignedInt(int offset, long value)
指定位置写入一个 无符号int值, content.length 必须不能小于offset+4- 参数:
offset- 偏移量value- int值- 返回:
- ByteArray
-
putFloat
public ByteArray putFloat(float value)
写入一个float值- 参数:
value- float值- 返回:
- ByteArray
-
putFloat
public ByteArray putFloat(int offset, float value)
指定位置写入一个float值, content.length 必须不能小于offset+4- 参数:
offset- 偏移量value- float值- 返回:
- ByteArray
-
putLong
public ByteArray putLong(long value)
写入一个long值- 参数:
value- long值- 返回:
- ByteArray
-
putLong
public ByteArray putLong(int offset, long value)
指定位置写入一个long值, content.length 必须不能小于offset+8- 参数:
offset- 偏移量value- long值- 返回:
- ByteArray
-
putDouble
public ByteArray putDouble(double value)
写入一个double值- 参数:
value- double值- 返回:
- ByteArray
-
putDouble
public ByteArray putDouble(int offset, double value)
指定位置写入一个double值, content.length 必须不能小于offset+8- 参数:
offset- 偏移量value- double值- 返回:
- ByteArray
-
putUint128
public ByteArray putUint128(Uint128 value)
写入一个Uint128值- 参数:
value- Uint128值- 返回:
- ByteArray
-
putUint128
public ByteArray putUint128(int offset, Uint128 value)
指定位置写入一个Uint128值, content.length 必须不能小于offset+16- 参数:
offset- 偏移量value- Uint128值- 返回:
- ByteArray
-
putByte
public ByteArray putByte(short value)
-
putByte
public ByteArray putByte(char value)
-
putByte
public ByteArray putByte(int value)
-
putWithoutCheck
public void putWithoutCheck(byte value)
写入一个byte值- 参数:
value- byte值
-
putByte
public ByteArray putByte(int offset, byte value)
写入一个byte值, content.length 必须不能小于offset+1- 参数:
offset- 偏移量value- byte值- 返回:
- ByteArray
-
putByte
public ByteArray putByte(int offset, int value)
写入一个byte值, content.length 必须不能小于offset+1- 参数:
offset- 偏移量value- byte值- 返回:
- ByteArray
-
put
public ByteArray put(byte value)
写入一个byte值- 参数:
value- byte值- 返回:
- ByteArray
-
put
public ByteArray put(byte value1, byte value2)
写入两个byte值- 参数:
value1- byte值value2- byte值- 返回:
- ByteArray
-
put
public ByteArray put(byte value1, byte value2, byte value3)
写入三个byte值- 参数:
value1- byte值value2- byte值value3- byte值- 返回:
- ByteArray
-
put
public ByteArray put(int offset, @Nonnull byte... values)
指定位置写入一组byte值, content.length 必须不能小于offset+values.length- 参数:
offset- 偏移量values- 一组byte值- 返回:
- ByteArray
-
put
public ByteArray put(@Nonnull byte[] values, int offset, int length)
写入一组byte值- 参数:
values- 一组byte值offset- 偏移量length- 长度- 返回:
- ByteArray
-
put
public ByteArray put(int poffset, @Nonnull byte[] values, int offset, int length)
写入一组byte值, content.length 必须不能小于poffset+length- 参数:
poffset- 偏移量values- 一组byte值offset- 偏移量length- 长度- 返回:
- ByteArray
-
put
public void put(@Nullable ByteBuffer buffer)
将ByteBuffer的内容读取到本对象中- 参数:
buffer- ByteBuffer
-
put
public ByteArray put(@Nonnull ByteArray array, int offset, int length)
写入ByteArray中的一部分- 参数:
array- ByteArrayoffset- 偏移量length- 长度- 返回:
- ByteArray
-
put
public ByteArray put(@Nonnull ByteBuffer buffer, int length)
写入ByteBuffer指定长度的数据- 参数:
buffer- 数据length- 指定长度- 返回:
- ByteArray
-
toUTF8String
public String toUTF8String()
-
toString
public String toString(boolean latin1, Charset charset)
按指定字符集转成字符串- 参数:
latin1- 是否LATIN1charset- 字符集- 返回:
- 字符串
-
toString
public String toString(int offset, int len, Charset charset)
将指定的起始位置和长度按指定字符集转成字符串- 参数:
offset- 起始位置len- 长度charset- 字符集- 返回:
- 字符串
-
toString
public String toString(boolean latin1, int offset, int len, Charset charset)
将指定的起始位置和长度按指定字符集转成字符串- 参数:
latin1- 是否LATIN1offset- 起始位置len- 长度charset- 字符集- 返回:
- 字符串
-
-