📜  Java Java类

📅  最后修改于: 2022-05-13 01:54:23.041000             🧑  作者: Mango

Java Java类

Byte 类是原始类型 byte 的包装类,它包含几种有效处理字节值的方法,例如将其转换为字符串表示形式,反之亦然。 Byte 类的对象可以保存单个字节值。初始化一个 Byte 对象主要有两个构造函数——

  • Byte(byte b):创建一个使用提供的值初始化的 Byte 对象。
Syntax:  public Byte(byte b)
Parameters :
b : value with which to initialize
  • Byte(String s):创建一个用字符串表示提供的字节值初始化的 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.

Byte 类中的字段:

  1. static int BYTES :用于表示二进制补码形式的字节值的字节数。
  2. static byte MAX_VALUE :一个常量,保存一个字节可以具有的最大值,27-1。
  3. static byte MIN_VALUE :一个常量,保存一个字节可以具有的最小值,-27。
  4. static int SIZE :用于以二进制补码形式表示字节值的位数。
  5. static Class TYPE :表示原始类型字节的 Class 实例。

方法:

  1. toString() 返回字节值对应的字符串。
Syntax : public String toString(byte b)
Parameters :
b : byte value for which string representation required.
  1. valueOf() :返回使用提供的值初始化的 Byte 对象。
Syntax : public static Byte valueOf(byte b)
Parameters :
b : a byte value
  1. 另一个重载函数valueOf(String val,int 函数 ) 提供类似于
    新字节(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.
  1. 另一个重载函数valueOf(String 函数 ) 提供类似于
    新字节(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.
  1. 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.
  1. 另一个仅包含 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.
  1. decode() :返回一个 Byte 对象,其中包含提供的字符串的解码值。提供的字符串必须采用以下形式,否则将抛出 NumberFormatException -
    Decimal-(符号)Decimal_Number
    Hex-(符号)”0x”Hex_Digits
    Hex-(符号)“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
  1. byteValue() 返回与此字节对象对应的字节值。
Syntax : public byte byteValue()
  1. shortValue() :返回与此字节对象对应的短值。
Syntax : public short shortValue()
  1. intValue() 返回与此字节对象对应的 int 值。
Syntax : public int intValue()
  1. longValue() 返回与此字节对象对应的长值。
Syntax : public long longValue()
  1. doubleValue() :返回与此字节对象对应的双精度值。
Syntax : public double doubleValue()
  1. floatValue() :返回与此字节对象对应的浮点值。
Syntax : public float floatValue()
  1. hashCode() 返回此字节对象对应的哈希码。
Syntax : public int hashCode()
  1. equals() 用于比较两个 Byte 对象的相等性。如果两个对象包含相同的字节值,则此方法返回 true。只有在检查相等性时才应该使用。在所有其他情况下,应该首选 compareTo 方法。
Syntax : public boolean equals(Object obj)
Parameters :
obj : object to compare with
  1. compareTo() 用于比较两个 Byte 对象的数值相等性。这应该在比较两个 Byte 值的数值相等时使用,因为它会区分较小和较大的值。返回小于 0,0 的值,大于 0 的值表示小于、等于和大于。
Syntax : public int compareTo(Byte b)
Parameters :
b : Byte object to compare with
  1. compare() 用于比较两个原始字节值是否相等。由于它是一个静态方法,因此可以在不创建任何 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