- All Implemented Interfaces:
Serializable
,Comparable<Byte>
,Constable
public final class Byte extends Number implements Comparable<Byte>, Constable
Byte
class wraps a value of primitive type byte
in an object. An object of type Byte
contains a single
field whose type is byte
.
In addition, this class provides several methods for converting
a byte
to a String
and a String
to a
byte
, as well as other constants and methods useful when dealing
with a byte
.
- Since:
- 1.1
- See Also:
Number
, Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static int
BYTES
The number of bytes used to represent abyte
value in two's complement binary form.static byte
MAX_VALUE
A constant holding the maximum value abyte
can have, 27-1.static byte
MIN_VALUE
A constant holding the minimum value abyte
can have, -27.static int
SIZE
The number of bits used to represent abyte
value in two's complement binary form.static Class<Byte>
TYPE
TheClass
instance representing the primitive typebyte
. -
Constructor Summary
-
Method Summary
Modifier and Type Method Description byte
byteValue()
Returns the value of thisByte
as abyte
.static int
compare(byte x, byte y)
Compares twobyte
values numerically.int
compareTo(Byte anotherByte)
Compares twoByte
objects numerically.static int
compareUnsigned(byte x, byte y)
Compares twobyte
values numerically treating the values as unsigned.static Byte
decode(String nm)
Decodes aString
into aByte
.Optional<DynamicConstantDesc<Byte>>
describeConstable()
Returns anOptional
containing the nominal descriptor for this instance.double
doubleValue()
Returns the value of thisByte
as adouble
after a widening primitive conversion.boolean
equals(Object obj)
Compares this object to the specified object.float
floatValue()
Returns the value of thisByte
as afloat
after a widening primitive conversion.int
hashCode()
Returns a hash code for thisByte
; equal to the result of invokingintValue()
.static int
hashCode(byte value)
Returns a hash code for abyte
value; compatible withByte.hashCode()
.int
intValue()
Returns the value of thisByte
as anint
after a widening primitive conversion.long
longValue()
Returns the value of thisByte
as along
after a widening primitive conversion.static byte
parseByte(String s)
Parses the string argument as a signed decimalbyte
.static byte
parseByte(String s, int radix)
Parses the string argument as a signedbyte
in the radix specified by the second argument.short
shortValue()
Returns the value of thisByte
as ashort
after a widening primitive conversion.String
toString()
Returns aString
object representing thisByte
's value.static String
toString(byte b)
Returns a newString
object representing the specifiedbyte
.static int
toUnsignedInt(byte x)
Converts the argument to anint
by an unsigned conversion.static long
toUnsignedLong(byte x)
Converts the argument to along
by an unsigned conversion.static Byte
valueOf(byte b)
Returns aByte
instance representing the specifiedbyte
value.static Byte
valueOf(String s)
Returns aByte
object holding the value given by the specifiedString
.static Byte
valueOf(String s, int radix)
Returns aByte
object holding the value extracted from the specifiedString
when parsed with the radix given by the second argument.
-
Field Details
-
MIN_VALUE
public static final byte MIN_VALUEA constant holding the minimum value abyte
can have, -27.- See Also:
- Constant Field Values
-
MAX_VALUE
public static final byte MAX_VALUEA constant holding the maximum value abyte
can have, 27-1.- See Also:
- Constant Field Values
-
TYPE
TheClass
instance representing the primitive typebyte
. -
SIZE
public static final int SIZEThe number of bits used to represent abyte
value in two's complement binary form.- Since:
- 1.5
- See Also:
- Constant Field Values
-
BYTES
public static final int BYTESThe number of bytes used to represent abyte
value in two's complement binary form.- Since:
- 1.8
- See Also:
- Constant Field Values
-
-
Constructor Details
-
Byte
Deprecated.It is rarely appropriate to use this constructor. The static factoryvalueOf(byte)
is generally a better choice, as it is likely to yield significantly better space and time performance.Constructs a newly allocatedByte
object that represents the specifiedbyte
value.- Parameters:
value
- the value to be represented by theByte
.
-
Byte
Deprecated.It is rarely appropriate to use this constructor. UseparseByte(String)
to convert a string to abyte
primitive, or usevalueOf(String)
to convert a string to aByte
object.Constructs a newly allocatedByte
object that represents thebyte
value indicated by theString
parameter. The string is converted to abyte
value in exactly the manner used by theparseByte
method for radix 10.- Parameters:
s
- theString
to be converted to aByte
- Throws:
NumberFormatException
- if theString
does not contain a parsablebyte
.
-
-
Method Details
-
toString
Returns a newString
object representing the specifiedbyte
. The radix is assumed to be 10.- Parameters:
b
- thebyte
to be converted- Returns:
- the string representation of the specified
byte
- See Also:
Integer.toString(int)
-
describeConstable
Returns anOptional
containing the nominal descriptor for this instance.- Specified by:
describeConstable
in interfaceConstable
- Returns:
- an
Optional
describing the Byte instance - Since:
- 15
-
valueOf
Returns aByte
instance representing the specifiedbyte
value. If a newByte
instance is not required, this method should generally be used in preference to the constructorByte(byte)
, as this method is likely to yield significantly better space and time performance since all byte values are cached.- Parameters:
b
- a byte value.- Returns:
- a
Byte
instance representingb
. - Since:
- 1.5
-
parseByte
Parses the string argument as a signedbyte
in the radix specified by the second argument. The characters in the string must all be digits, of the specified radix (as determined by whetherCharacter.digit(char, int)
returns a nonnegative value) except that the first character may be an ASCII minus sign'-'
('\u002D'
) to indicate a negative value or an ASCII plus sign'+'
('\u002B'
) to indicate a positive value. The resultingbyte
value is returned.An exception of type
NumberFormatException
is thrown if any of the following situations occurs:- The first argument is
null
or is a string of length zero. - The radix is either smaller than
Character.MIN_RADIX
or larger thanCharacter.MAX_RADIX
. - Any character of the string is not a digit of the
specified radix, except that the first character may be a minus
sign
'-'
('\u002D'
) or plus sign'+'
('\u002B'
) provided that the string is longer than length 1. - The value represented by the string is not a value of type
byte
.
- Parameters:
s
- theString
containing thebyte
representation to be parsedradix
- the radix to be used while parsings
- Returns:
- the
byte
value represented by the string argument in the specified radix - Throws:
NumberFormatException
- If the string does not contain a parsablebyte
.
- The first argument is
-
parseByte
Parses the string argument as a signed decimalbyte
. The characters in the string must all be decimal digits, except that the first character may be an ASCII minus sign'-'
('\u002D'
) to indicate a negative value or an ASCII plus sign'+'
('\u002B'
) to indicate a positive value. The resultingbyte
value is returned, exactly as if the argument and the radix 10 were given as arguments to theparseByte(java.lang.String, int)
method.- Parameters:
s
- aString
containing thebyte
representation to be parsed- Returns:
- the
byte
value represented by the argument in decimal - Throws:
NumberFormatException
- if the string does not contain a parsablebyte
.
-
valueOf
Returns aByte
object holding the value extracted from the specifiedString
when parsed with the radix given by the second argument. The first argument is interpreted as representing a signedbyte
in the radix specified by the second argument, exactly as if the argument were given to theparseByte(java.lang.String, int)
method. The result is aByte
object that represents thebyte
value specified by the string.In other words, this method returns a
Byte
object equal to the value of:new Byte(Byte.parseByte(s, radix))
- Parameters:
s
- the string to be parsedradix
- the radix to be used in interpretings
- Returns:
- a
Byte
object holding the value represented by the string argument in the specified radix. - Throws:
NumberFormatException
- If theString
does not contain a parsablebyte
.
-
valueOf
Returns aByte
object holding the value given by the specifiedString
. The argument is interpreted as representing a signed decimalbyte
, exactly as if the argument were given to theparseByte(java.lang.String)
method. The result is aByte
object that represents thebyte
value specified by the string.In other words, this method returns a
Byte
object equal to the value of:new Byte(Byte.parseByte(s))
- Parameters:
s
- the string to be parsed- Returns:
- a
Byte
object holding the value represented by the string argument - Throws:
NumberFormatException
- If theString
does not contain a parsablebyte
.
-
decode
Decodes aString
into aByte
. Accepts decimal, hexadecimal, and octal numbers given by the following grammar:- DecodableString:
- Signopt DecimalNumeral
- Signopt
0x
HexDigits- Signopt
0X
HexDigits- Signopt
#
HexDigits- Signopt
0
OctalDigits - Signopt
- Sign:
-
+
The sequence of characters following an optional sign and/or radix specifier ("
0x
", "0X
", "#
", or leading zero) is parsed as by theByte.parseByte
method with the indicated radix (10, 16, or 8). This sequence of characters must represent a positive value or aNumberFormatException
will be thrown. The result is negated if first character of the specifiedString
is the minus sign. No whitespace characters are permitted in theString
.- Parameters:
nm
- theString
to decode.- Returns:
- a
Byte
object holding thebyte
value represented bynm
- Throws:
NumberFormatException
- if theString
does not contain a parsablebyte
.- See Also:
parseByte(java.lang.String, int)
-
byteValue
public byte byteValue()Returns the value of thisByte
as abyte
. -
shortValue
public short shortValue()Returns the value of thisByte
as ashort
after a widening primitive conversion.- Overrides:
shortValue
in classNumber
- Returns:
- the numeric value represented by this object after conversion
to type
short
. - See Java Language Specification:
-
5.1.2 Widening Primitive Conversion
-
intValue
public int intValue()Returns the value of thisByte
as anint
after a widening primitive conversion.- Specified by:
intValue
in classNumber
- Returns:
- the numeric value represented by this object after conversion
to type
int
. - See Java Language Specification:
-
5.1.2 Widening Primitive Conversion
-
longValue
public long longValue()Returns the value of thisByte
as along
after a widening primitive conversion.- Specified by:
longValue
in classNumber
- Returns:
- the numeric value represented by this object after conversion
to type
long
. - See Java Language Specification:
-
5.1.2 Widening Primitive Conversion
-
floatValue
public float floatValue()Returns the value of thisByte
as afloat
after a widening primitive conversion.- Specified by:
floatValue
in classNumber
- Returns:
- the numeric value represented by this object after conversion
to type
float
. - See Java Language Specification:
-
5.1.2 Widening Primitive Conversion
-
doubleValue
public double doubleValue()Returns the value of thisByte
as adouble
after a widening primitive conversion.- Specified by:
doubleValue
in classNumber
- Returns:
- the numeric value represented by this object after conversion
to type
double
. - See Java Language Specification:
-
5.1.2 Widening Primitive Conversion
-
toString
Returns aString
object representing thisByte
's value. The value is converted to signed decimal representation and returned as a string, exactly as if thebyte
value were given as an argument to thetoString(byte)
method. -
hashCode
public int hashCode()Returns a hash code for thisByte
; equal to the result of invokingintValue()
.- Overrides:
hashCode
in classObject
- Returns:
- a hash code value for this
Byte
- See Also:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
hashCode
public static int hashCode(byte value)Returns a hash code for abyte
value; compatible withByte.hashCode()
.- Parameters:
value
- the value to hash- Returns:
- a hash code value for a
byte
value. - Since:
- 1.8
-
equals
Compares this object to the specified object. The result istrue
if and only if the argument is notnull
and is aByte
object that contains the samebyte
value as this object.- Overrides:
equals
in classObject
- Parameters:
obj
- the object to compare with- Returns:
true
if the objects are the same;false
otherwise.- See Also:
Object.hashCode()
,HashMap
-
compareTo
Compares twoByte
objects numerically.- Specified by:
compareTo
in interfaceComparable<Byte>
- Parameters:
anotherByte
- theByte
to be compared.- Returns:
- the value
0
if thisByte
is equal to the argumentByte
; a value less than0
if thisByte
is numerically less than the argumentByte
; and a value greater than0
if thisByte
is numerically greater than the argumentByte
(signed comparison). - Since:
- 1.2
-
compare
public static int compare(byte x, byte y)Compares twobyte
values numerically. The value returned is identical to what would be returned by:Byte.valueOf(x).compareTo(Byte.valueOf(y))
- Parameters:
x
- the firstbyte
to comparey
- the secondbyte
to compare- Returns:
- the value
0
ifx == y
; a value less than0
ifx < y
; and a value greater than0
ifx > y
- Since:
- 1.7
-
compareUnsigned
public static int compareUnsigned(byte x, byte y)Compares twobyte
values numerically treating the values as unsigned.- Parameters:
x
- the firstbyte
to comparey
- the secondbyte
to compare- Returns:
- the value
0
ifx == y
; a value less than0
ifx < y
as unsigned values; and a value greater than0
ifx > y
as unsigned values - Since:
- 9
-
toUnsignedInt
public static int toUnsignedInt(byte x)Converts the argument to anint
by an unsigned conversion. In an unsigned conversion to anint
, the high-order 24 bits of theint
are zero and the low-order 8 bits are equal to the bits of thebyte
argument. Consequently, zero and positivebyte
values are mapped to a numerically equalint
value and negativebyte
values are mapped to anint
value equal to the input plus 28.- Parameters:
x
- the value to convert to an unsignedint
- Returns:
- the argument converted to
int
by an unsigned conversion - Since:
- 1.8
-
toUnsignedLong
public static long toUnsignedLong(byte x)Converts the argument to along
by an unsigned conversion. In an unsigned conversion to along
, the high-order 56 bits of thelong
are zero and the low-order 8 bits are equal to the bits of thebyte
argument. Consequently, zero and positivebyte
values are mapped to a numerically equallong
value and negativebyte
values are mapped to along
value equal to the input plus 28.- Parameters:
x
- the value to convert to an unsignedlong
- Returns:
- the argument converted to
long
by an unsigned conversion - Since:
- 1.8
-