阅读(669) (6)

鸿蒙OS Byte

2022-04-28 15:49:40 更新

Byte

java.lang.Object

|---java.lang.Number

|---|---java.lang.Byte

public final class Byte
extends Number
implements Comparable<Byte>

Byte 类将原始类型 byte 的值包装在一个对象中。 Byte 类型的对象包含一个类型为 byte 的字段。

此外,该类提供了几种将字节转换为字符串和将字符串转换为字节的方法,以及在处理字节时有用的其他常量和方法。

字段摘要

修饰符和类型 字段 描述
static int BYTES 用于以二进制补码形式表示字节值的字节数。
static byte MAX_VALUE 一个保持字节可以具有的最大值的常量,27-1。
static byte MIN_VALUE 一个保持字节可以具有的最小值的常量,-27。
static int SIZE 用于以二进制补码形式表示字节值的位数。
static ClassByte TYPE 表示原始类型字节的 Class 实例。

构造函数摘要

构造函数 描述
Byte(byte value) 构造一个新分配的 Byte 对象,该对象表示指定的字节值。
Byte(String s) 构造一个新分配的 Byte 对象,该对象表示由 String 参数指示的字节值。

方法总结

修饰符和类型 方法 描述
byte byteValue() 以字节形式返回此 Byte 的值。
static int compare(byte x, byte y) 以数字方式比较两个字节值。
int compareTo(Byte anotherByte) 以数字方式比较两个 Byte 对象。
static Byte decode(String nm) 将字符串解码为字节。
double doubleValue() 在扩大原始转换后,将此 Byte 的值作为双精度值返回。
boolean equals(Object obj) 将此对象与指定对象进行比较。
float floatValue() 在扩大基元转换后,将此 Byte 的值作为浮点数返回。
int hashCode() 返回此字节的哈希码; 等于调用 intValue() 的结果。
static int hashCode(byte value) 返回字节值的哈希码; 与 Byte.hashCode() 兼容。
int intValue() 在扩展原语转换后,将此 Byte 的值作为 int 返回。
long longValue() 在扩展原语转换后将此 Byte 的值作为 long 返回。
static byte parseByte(String s) 将字符串参数解析为有符号十进制字节。
static byte parseByte(String s, int radix) 将字符串参数解析为第二个参数指定的基数中的有符号字节。
short shortValue() 在扩展原语转换后,将此 Byte 的值作为短返回。
String toString() 返回表示此 Byte 值的 String 对象。
static String toString(byte b) 返回一个表示指定字节的新 String 对象。
static int toUnsignedInt(byte x) 通过无符号转换将参数转换为 int。
static long toUnsignedLong(byte x) 通过无符号转换将参数转换为 long。
static Byte valueOf(byte b) 返回表示指定字节值的 Byte 实例。
static Byte valueOf(String s) 返回一个 Byte 对象,该对象保存由指定 String 给出的值。
static Byte valueOf(String s, int radix) 当使用第二个参数给出的基数进行解析时,返回一个 Byte 对象,该对象包含从指定 String 中提取的值。
从类 java.lang.Object 继承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait

字段详细信息

BYTES

public static final int BYTES

用于以二进制补码形式表示字节值的字节数。

MAX_VALUE

public static final byte MAX_VALUE

一个保持字节可以具有的最大值的常量,27-1。

MIN_VALUE

public static final byte MIN_VALUE

一个保持字节可以具有的最小值的常量,-27。

SIZE

public static final int SIZE

用于以二进制补码形式表示字节值的位数。

TYPE

public static final ClassByte TYPE

表示原始类型字节的 Class 实例。

构造函数详细信息

Byte

public Byte(byte value)

构造一个新分配的 Byte 对象,该对象表示指定的字节值。

参数:

参数名称 参数描述
value 要由 Byte 表示的值。

Byte

public Byte(String s) throws NumberFormatException

构造一个新分配的 Byte 对象,该对象表示由 String 参数指示的字节值。 字符串转换为字节值的方式与 parseByte 方法用于基数 10 的方式完全相同。

参数:

参数名称 参数描述
s 要转换为字节的字符串

Throws:

Throw名称 Throw描述
NumberFormatException 如果字符串不包含可解析字节。

方法详情

toString

public static String toString(byte b)

返回一个表示指定字节的新 String 对象。 基数假定为 10。

参数:

参数名称 参数描述
b 要转换的字节

返回:

指定字节的字符串表示

valueOf

public static Byte valueOf(byte b)

返回表示指定字节值的 Byte 实例。 如果不需要新的 Byte 实例,则通常应优先使用此方法而不是构造函数 Byte(byte),因为此方法可能会产生明显更好的空间和时间性能,因为所有字节值都被缓存。

参数:

参数名称 参数描述
b 一个字节值。

返回:

代表 b 的 Byte 实例。

parseByte

public static byte parseByte(String s, int radix) throws NumberFormatException

将字符串参数解析为第二个参数指定的基数中的有符号字节。 字符串中的字符必须都是指定基数的数字(由 Character.digit(char, int) 是否返回非负值决定),但第一个字符可能是 ASCII 减号 '-' ('\u002D ') 表示负值或 ASCII 加号 '+' ('\u002B') 表示正值。 返回结果字节值。

如果发生以下任何一种情况,则会引发 NumberFormatException 类型的异常:

  • 第一个参数为空或长度为零的字符串。
  • 基数小于 Character.MIN_RADIX 或大于 Character.MAX_RADIX。
  • 字符串的任何字符都不是指定基数的数字,除非第一个字符可以是减号'-'('\u002D')或加号'+'('\u002B'),前提是字符串 比长度 1 长。
  • 字符串表示的值不是字节类型的值。

参数:

参数名称 参数描述
s 包含要解析的字节表示的字符串
radix 解析 s 时要使用的基数

返回:

由指定基数中的字符串参数表示的字节值

Throws:

Throw名称 Throw描述
NumberFormatException 如果字符串不包含可解析字节。

parseByte

public static byte parseByte(String s) throws NumberFormatException

将字符串参数解析为有符号十进制字节。 字符串中的字符必须都是十进制数字,除了第一个字符可以是ASCII减号'-'('\u002D')表示负值或ASCII加号'+'('\u002B') 表示正值。 返回结果字节值,就像将参数和基数 10 作为参数提供给 parseByte(java.lang.String,int) 方法一样。

参数:

参数名称 参数描述
s 一个包含要解析的字节表示的字符串

返回:

十进制参数表示的字节值

Throws:

Throw名称 Throw描述
NumberFormatException 如果字符串不包含可解析字节。

valueOf

public static Byte valueOf(String s, int radix) throws NumberFormatException

当使用第二个参数给出的基数进行解析时,返回一个 Byte 对象,该对象包含从指定 String 中提取的值。 第一个参数被解释为表示由第二个参数指定的基数中的有符号字节,就像将该参数提供给 parseByte(java.lang.String,int) 方法一样。 结果是一个 Byte 对象,它表示字符串指定的字节值。

换句话说,此方法返回一个 Byte 对象,其值等于:

new Byte(Byte.parseByte(s, radix))

参数:

参数名称 参数描述
s 要解析的字符串
radix 用于解释 s 的基数

返回:

一个 Byte 对象,保存由指定基数中的字符串参数表示的值。

Throws:

Throw名称 Throw描述
NumberFormatException 如果字符串不包含可解析字节。

valueOf

public static Byte valueOf(String s) throws NumberFormatException

返回一个 Byte 对象,该对象保存由指定 String 给出的值。 该参数被解释为表示一个带符号的十进制字节,就像将该参数提供给 parseByte(java.lang.String) 方法一样。 结果是一个 Byte 对象,它表示字符串指定的字节值。

换句话说,此方法返回一个 Byte 对象,其值等于:

new Byte(Byte.parseByte(s))

参数:

参数名称 参数描述
s 要解析的字符串

返回:

一个 Byte 对象,保存由字符串参数表示的值

Throws:

Throw名称 Throw描述
NumberFormatException 如果字符串不包含可解析字节。

decode

public static Byte decode(String nm) throws NumberFormatException

将字符串解码为字节。 接受以下语法给出的十进制、十六进制和八进制数:

可解码字符串:

Signopt 十进制数字

Signopt 0x HexDigits

Signopt 0X HexDigits

Signopt #HexDigits

Signopt 0 八进制数字

符号:

+

DecimalNumeral、HexDigits 和 OctalDigits 的定义见《Java™ 语言规范》第 3.10.1 节,但数字之间不接受下划线。

跟随可选符号和/或基数说明符(“0x”、“0X”、“#”或前导零)的字符序列被 Byte.parseByte 方法解析为具有指示的基数(10、16 或 8 )。 此字符序列必须表示正值,否则将引发 NumberFormatException。 如果指定字符串的第一个字符是减号,则结果为否定。 字符串中不允许有空格字符。

参数:

参数名称 参数描述
nm 要解码的字符串。

返回:

保存由 nm 表示的字节值的 Byte 对象

Throws:

Throw名称 Throw描述
NumberFormatException 如果字符串不包含可解析字节。

byteValue

public byte byteValue()

以字节形式返回此 Byte 的值。

覆盖:

类 Number 中的 byteValue

返回:

此对象在转换为字节类型后表示的数值。

shortValue

public short shortValue()

在扩展原语转换后,将此 Byte 的值作为短返回。

覆盖:

类 Number 中的 shortValue

返回:

此对象在转换为 short 类型后表示的数值。

intValue

public int intValue()

在扩展原语转换后,将此 Byte 的值作为 int 返回。

指定者:

类 Number 中的 intValue

返回:

此对象在转换为 int 类型后表示的数值。

longValue

public long longValue()

在扩展原语转换后将此 Byte 的值作为 long 返回。

指定者:

类 Number 中的 longValue

返回:

此对象在转换为 long 类型后表示的数值。

floatValue

public float floatValue()

在扩大基元转换后,将此 Byte 的值作为浮点数返回。

指定者:

类 Number 中的 floatValue

返回:

此对象在转换为 float 类型后表示的数值。

doubleValue

public double doubleValue()

在扩大原始转换后,将此 Byte 的值作为双精度值返回。

指定者:

类 Number 中的 doubleValue

返回:

此对象在转换为 double 类型后表示的数值。

toString

public String toString()

返回表示此 Byte 值的 String 对象。 该值被转换为带符号的十进制表示并以字符串形式返回,就像将字节值作为参数提供给 toString(byte) 方法一样。

覆盖:

类 Object 中的 toString

返回:

以 10 为基数的此对象值的字符串表示形式。

hashCode

public int hashCode()

返回此字节的哈希码; 等于调用 intValue() 的结果。

覆盖:

类 Object 中的 hashCode

返回:

此字节的哈希码值

hashCode

public static int hashCode(byte value)

返回字节值的哈希码; 与 Byte.hashCode() 兼容。

参数:

参数名称 参数描述
value 要散列的值

返回:

字节值的哈希码值。

equals

public boolean equals(Object obj)

将此对象与指定对象进行比较。 当且仅当参数不为 null 并且是包含与此对象相同的字节值的 Byte 对象时,结果才为真。

覆盖:

类 Object 中的等于

参数:

参数名称 参数描述
obj 比较的对象

返回:

如果对象相同,则为 true; 否则为假。

compareTo

public int compareTo(Byte anotherByte)

以数字方式比较两个 Byte 对象。

指定者:

接口 ComparableByte 中的 compareTo

参数:

参数名称 参数描述
anotherByte 要比较的字节。

返回:

如果此 Byte 等于参数 Byte,则值为 0; 如果此 Byte 在数值上小于参数 Byte,则值小于 0; 如果此 Byte 在数值上大于参数 Byte(有符号比较),则值大于 0。

compare

public static int compare(byte x, byte y)

以数字方式比较两个字节值。 返回的值与通过以下方式返回的值相同:

    Byte.valueOf(x).compareTo(Byte.valueOf(y)) 

参数:

参数名称 参数描述
x 要比较的第一个字节
y 要比较的第二个字节

返回:

如果 x == y,则值为 0; 如果 x < y,则值小于 0; 如果 x > y,则值大于 0

toUnsignedInt

public static int toUnsignedInt(byte x)

通过无符号转换将参数转换为 int。 在到 int 的无符号转换中,int 的高 24 位为零,低 8 位等于 byte 参数的位。 因此,零和正字节值映射到数值相等的 int 值,负字节值映射到等于输入加 28 的 int 值。

参数:

参数名称 参数描述
x 要转换为无符号整数的值

返回:

通过无符号转换转换为 int 的参数

toUnsignedLong

public static long toUnsignedLong(byte x)

通过无符号转换将参数转换为 long。 在到 long 的无符号转换中,long 的高 56 位为零,低 8 位等于 byte 参数的位。 因此,零和正字节值映射到数值相等的长整数值,负字节值映射到等于输入加 28 的长整数值。

参数:

参数名称 参数描述
x 要转换为无符号长整数的值

返回:

通过无符号转换转换为 long 的参数