字节类是一个 包装类 对于基元类型字节,它包含几种有效处理字节值的方法,如将其转换为字符串表示,反之亦然。字节类的对象可以保存一个字节值。初始化字节对象主要有两个构造函数-
null
- 字节(字节b): 创建用提供的值初始化的字节对象。
Syntax: public Byte(byte b) Parameters : b : value with which to initialize
- 字节(字符串s): 创建一个字节对象,用字符串表示法提供的字节值初始化。默认基数为10。
Syntax : public Byte(String s) throws NumberFormatException Parameters : s : string representation of the byte value Throws : NumberFormatException : If the string provided does not represent any byte value.
字节类中的字段:
- 静态整数字节 :用于以2的补码二进制形式表示字节值的字节数。
- 静态字节最大值 :一个常量,保存一个字节可以拥有的最大值,27-1。
- 静态字节最小值 :一个常量,包含一个字节可以具有的最小值,-27。
- 静态整数大小 :用二进制补码形式表示字节值的位数。
- 静态类类型 :表示基元类型字节的类实例。
方法:
- toString() : 返回与字节值对应的字符串。
Syntax : public String toString(byte b) Parameters : b : byte value for which string representation required.
- valueOf(): 返回用提供的值初始化的字节对象。
Syntax : public static Byte valueOf(byte b) Parameters : b : a byte value
- 另一个重载函数valueOf(String val,int-radix),它提供与 新字节(Byte.parseByte(val,基数))
Syntax : public static Byte valueOf(String val, int radix) throws NumberFormatException Parameters : val : String to be parsed into byte value radix : radix to be used while parsing Throws : NumberFormatException : if String cannot be parsed to a byte value in given radix.
- 另一个重载函数valueOf(String val),提供与 新字节(Byte.parseByte(val,10))
Syntax : public static Byte valueOf(String s) throws NumberFormatException Parameters : s : a String object to be parsed as byte Throws : NumberFormatException : if String cannot be parsed to a byte value in given radix.
- parseByte(): 通过分析以基数提供的字符串返回字节值。与valueOf()不同,因为它返回一个基本字节值,valueOf()返回字节对象。
Syntax : public static byte parseByte(String val, int radix) throws NumberFormatException Parameters : val : String representation of byte radix : radix to be used while parsing Throws : NumberFormatException : if String cannot be parsed to a byte value in given radix.
- 另一个重载方法只包含字符串作为参数,基数默认设置为10。
Syntax : public static byte parseByte(String val) throws NumberFormatException Parameters : val : String representation of byte Throws : NumberFormatException : if String cannot be parsed to a byte value in given radix.
- 解码(): 返回一个字节对象,该对象保存所提供字符串的解码值。提供的字符串必须为以下形式,否则将抛出NumberFormatException- 十进制(符号)十进制数 十六进制-(符号)“0x”十六进制数字 十六进制-(符号)“0X”十六进制数字 八进制-(符号)“0”八进制数字
Syntax : public static Byte decode(String s) throws NumberFormatException Parameters : s : encoded string to be parsed into byte val Throws : NumberFormatException : If the string cannot be decoded into a byte value
- 字节值() : 返回与此字节对象对应的字节值。
Syntax : public byte byteValue()
- shortValue(): 返回与此字节对象对应的短值。
Syntax : public short shortValue()
- intValue() : 返回与此字节对象对应的int值。
Syntax : public int intValue()
- longValue() : 返回与此字节对象对应的长值。
Syntax : public long longValue()
- doubleValue(): 返回与此字节对象对应的双精度值。
Syntax : public double doubleValue()
- floatValue(): 返回与此字节对象对应的浮点值。
Syntax : public float floatValue()
- hashCode() : 返回与此字节对象对应的哈希代码。
Syntax : public int hashCode()
- 等于 : 用于比较两字节对象的相等性。如果两个对象包含相同的字节值,则此方法返回true。仅当检查是否相等时才应使用。在所有其他情况下,应首选比较法。
Syntax : public boolean equals(Object obj) Parameters : obj : object to compare with
- 比较 : 用于比较两字节对象的数值相等性。在比较两个字节的数值是否相等时,应使用此选项,因为它会区分较小值和较大值。返回小于0,0的值,对于小于、等于和大于,返回大于0的值。
Syntax : public int compareTo(Byte b) Parameters : b : Byte object to compare with
- 比较 : 用于比较两个基本字节值的数值相等性。由于它是一个静态方法,因此可以在不创建任何字节对象的情况下使用它。
Syntax : public static int compare(byte x,byte y) Parameters : x : byte value y : another byte value
JAVA
// Java program to illustrate // various methods of Byte class public class Byte_test { public static void main(String[] args) { byte b = 55 ; String bb = "45" ; // Construct two Byte objects Byte x = new Byte(b); Byte y = new Byte(bb); // toString() System.out.println( "toString(b) = " + Byte.toString(b)); // valueOf() // return Byte object Byte z = Byte.valueOf(b); System.out.println( "valueOf(b) = " + z); z = Byte.valueOf(bb); System.out.println( "ValueOf(bb) = " + z); z = Byte.valueOf(bb, 6 ); System.out.println( "ValueOf(bb,6) = " + z); // parseByte() // return primitive byte value byte zz = Byte.parseByte(bb); System.out.println( "parseByte(bb) = " + zz); zz = Byte.parseByte(bb, 6 ); System.out.println( "parseByte(bb,6) = " + zz); //decode() String decimal = "45" ; String octal = "005" ; String hex = "0x0f" ; Byte dec=Byte.decode(decimal); System.out.println( "decode(45) = " + dec); dec=Byte.decode(octal); System.out.println( "decode(005) = " + dec); dec=Byte.decode(hex); System.out.println( "decode(0x0f) = " + dec); System.out.println( "bytevalue(x) = " + x.byteValue()); System.out.println( "shortvalue(x) = " + x.shortValue()); System.out.println( "intvalue(x) = " + x.intValue()); System.out.println( "longvalue(x) = " + x.longValue()); System.out.println( "doublevalue(x) = " + x.doubleValue()); System.out.println( "floatvalue(x) = " + x.floatValue()); int hash=x.hashCode(); System.out.println( "hashcode(x) = " + hash); boolean eq=x.equals(y); System.out.println( "x.equals(y) = " + eq); int e=Byte.compare(x, y); System.out.println( "compare(x,y) = " + e); int f=x.compareTo(y); System.out.println( "x.compareTo(y) = " + f); } } |
输出:
toString(b) = 55 valueOf(b) = 55 ValueOf(bb) = 45 ValueOf(bb,6) = 29 parseByte(bb) = 45 parseByte(bb,6) = 29 decode(45) = 45 decode(005) = 5 decode(0x0f) = 15 bytevalue(x) = 55 shortvalue(x) = 55 intvalue(x) = 55 longvalue(x) = 55 doublevalue(x) = 55.0 floatvalue(x) = 55.0 hashcode(x) = 55 x.equals(y) = false compare(x,y) = 10 x.compareTo(y) = 10
参考资料: 官方Java文档 本文由 Rishabh Mahrsee .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 写极客。组织 或者把你的文章寄去评论-team@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。 如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END