在 Java 中,Byte 类是基本类型 byte 的wrapper class,它包含多种有效处理字节值的方法,例如将其转换为字符串表示形式,反之亦然。 Byte 类的对象可以保存单个字节值。
Byte 类的构造函数
主要有两个构造函数来初始化 Byte 对象 -
1. 字节(字节b)
创建一个使用提供的值初始化的 Byte 对象。
Syntax: public Byte(byte b) Parameters : b : value with which to initialize
2. 字节(字符串)
创建一个 Byte 对象,并使用字符串表示形式提供的字节值进行初始化。默认基数为 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.
Java Byte 类中的字段
- static int BYTES: The number of bytes used to represent a byte value in two’s complement binary form.
- static byte MAX_VALUE: A constant holding the maximum value a byte can have, 27-1.
- static byte MIN_VALUE: A constant holding the minimum value a byte can have, -27.
- static int SIZE: The number of bits used to represent a byte value in two’s complement binary form.
- static Class<Byte> TYPE: The Class instance representing the primitive type byte.
Java 字节类中的方法
1.toString()
toString()函数返回与字节值对应的字符串。
Syntax : public String toString(byte b) Parameters : b : byte value for which string representation required.
2.valueOf():
此函数返回使用提供的值初始化的 Byte 对象。
Syntax : public static Byte valueOf(byte b) Parameters : b : a byte value
3. valueOf(字符串 val,int 基数)
另一个重载函数 valueOf(String val,int radix) 提供类似于 new Byte(Byte.parseByte(val,radix)) 的函数
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.
4. valueOf(字符串值)
另一个重载函数 valueOf(String val) 提供类似于 new Byte(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.
5.parseByte()
通过解析提供的基数中的字符串返回字节值。与 valueOf() 不同,它返回原始字节值,而 valueOf() 返回 Byte 对象。
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.
6. 另一个仅包含 String 作为参数的重载方法,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.
7.decode():
返回一个 Byte 对象,其中保存所提供字符串的解码值。提供的字符串必须采用以下形式,否则将抛出NumberFormatException- 十进制-(符号)Decimal_Number 十六进制-(符号)“0x”Hex_Digits 十六进制-(符号)“0X”Hex_Digits 八进制-(符号) )”0″Octal_Digits
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
8.byteValue()
byteValue() 函数返回与该字节对象对应的字节值。
Syntax : public byte byteValue()
9.shortValue()
返回与此字节对象对应的短值。
Syntax : public short shortValue()
10.intValue()
intValue() 返回与该字节对象对应的int 值。
Syntax : public int intValue()
11.longValue()
longValue() 函数返回与该字节对象对应的长整型值。
Syntax : public long longValue()
12.doubleValue()
返回与此字节对象对应的双精度值。
Syntax : public double doubleValue()
13.floatValue()
返回与此字节对象对应的浮点值。
Syntax : public float floatValue()
14.hashCode()
hashCode()方法返回与该字节对象对应的哈希码。
Syntax : public int hashCode()
15.equals()
它用于比较两个 Byte 对象的相等性。如果两个对象包含相同的字节值,则 equals() 方法返回 true。仅应在检查相等性时使用。在所有其他情况下,compareTo 方法应该是首选。
Syntax : public boolean equals(Object obj) Parameters : obj : object to compare with
16.compareTo()
compareTo() 用于比较两个 Byte 对象的数值是否相等。当比较两个字节值的数值相等时,应该使用它,因为它会区分较小和较大的值。返回小于 0,0 的值,大于 0 的值表示小于、等于和大于。
Syntax : public int compareTo(Byte b) Parameters : b : Byte object to compare with
17.compare()
compare() method 比较两个原始字节值的数值是否相等。由于它是静态方法,因此可以在不创建任何 Byte 对象的情况下使用它。
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
参考文献:Official Java Documentation
相关用法
- Java Java.Lang.Double用法及代码示例
- Java Java.Lang.Long用法及代码示例
- Java Java.io.BufferedInputStream.available()用法及代码示例
- Java Java.io.BufferedInputStream.close()用法及代码示例
- Java Java.io.BufferedInputStream.read()用法及代码示例
- Java Java.io.BufferedInputStream.reset()用法及代码示例
- Java Java.io.BufferedInputStream.skip()用法及代码示例
- Java Java.io.BufferedOutputStream.flush()用法及代码示例
- Java Java.io.BufferedOutputStream.Write()用法及代码示例
- Java Java.io.BufferedReader.Close()用法及代码示例
- Java Java.io.BufferedReader.mark()用法及代码示例
- Java Java.io.BufferedReader.markSupported()用法及代码示例
- Java Java.io.BufferedReader.read()用法及代码示例
- Java Java.io.BufferedReader.readline()用法及代码示例
- Java Java.io.BufferedReader.ready()用法及代码示例
- Java Java.io.BufferedReader.reset()用法及代码示例
- Java Java.io.BufferedReader.skip()用法及代码示例
- Java Java.io.BufferedWriter.close()用法及代码示例
- Java Java.io.BufferedWriter.flush()用法及代码示例
- Java Java.io.BufferedWriter.newLine()用法及代码示例
- Java Java.io.BufferedWriter.write()用法及代码示例
- Java Java.io.ByteArrayInputStream.available()用法及代码示例
- Java Java.io.ByteArrayInputStream.close()用法及代码示例
- Java Java.io.ByteArrayInputStream.mark()用法及代码示例
- Java Java.io.ByteArrayInputStream.read()用法及代码示例
注:本文由纯净天空筛选整理自佚名大神的英文原创作品 Java.Lang.Byte class in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。