@CheckReturnValue @GwtCompatible(emulated=true) public final class UnsignedInteger extends Number implements Comparable<UnsignedInteger>
A wrapper class for unsigned int
values, supporting arithmetic operations.
In some cases, when speed is more important than code readability, it may be faster simply to treat primitive int
values as unsigned, using the methods from UnsignedInts
.
See the Guava User Guide article on unsigned primitive utilities.
Modifier and Type | Field and Description |
---|---|
static UnsignedInteger |
MAX_VALUE |
static UnsignedInteger |
ONE |
static UnsignedInteger |
ZERO |
Modifier and Type | Method and Description |
---|---|
BigInteger |
bigIntegerValue()
Returns the value of this
UnsignedInteger as a BigInteger . |
int |
compareTo(UnsignedInteger other)
Compares this unsigned integer to another unsigned integer.
|
UnsignedInteger |
dividedBy(UnsignedInteger val)
Returns the result of dividing this by
val . |
double |
doubleValue()
Returns the value of this
UnsignedInteger as a float , analogous to a widening primitive conversion from int to double , and correctly rounded. |
boolean |
equals(Object obj) |
float |
floatValue()
Returns the value of this
UnsignedInteger as a float , analogous to a widening primitive conversion from int to float , and correctly rounded. |
static UnsignedInteger |
fromIntBits(int bits)
Returns an
UnsignedInteger corresponding to a given bit representation. |
int |
hashCode() |
int |
intValue()
Returns the value of this
UnsignedInteger as an int . |
long |
longValue()
Returns the value of this
UnsignedInteger as a long . |
UnsignedInteger |
minus(UnsignedInteger val)
Returns the result of subtracting this and
val . |
UnsignedInteger |
mod(UnsignedInteger val)
Returns this mod
val . |
UnsignedInteger |
plus(UnsignedInteger val)
Returns the result of adding this and
val . |
UnsignedInteger |
times(UnsignedInteger val)
Returns the result of multiplying this and
val . |
String |
toString()
Returns a string representation of the
UnsignedInteger value, in base 10. |
String |
toString(int radix)
Returns a string representation of the
UnsignedInteger value, in base radix . |
static UnsignedInteger |
valueOf(BigInteger value)
Returns a
UnsignedInteger representing the same value as the specified BigInteger . |
static UnsignedInteger |
valueOf(long value)
Returns an
UnsignedInteger that is equal to value , if possible. |
static UnsignedInteger |
valueOf(String string)
Returns an
UnsignedInteger holding the value of the specified String , parsed as an unsigned int value. |
static UnsignedInteger |
valueOf(String string,
int radix)
Returns an
UnsignedInteger holding the value of the specified String , parsed as an unsigned int value in the specified radix. |
byteValue, shortValue
public static final UnsignedInteger ZERO
public static final UnsignedInteger ONE
public static final UnsignedInteger MAX_VALUE
public static UnsignedInteger fromIntBits(int bits)
Returns an UnsignedInteger
corresponding to a given bit representation. The argument is interpreted as an unsigned 32-bit value. Specifically, the sign bit of bits
is interpreted as a normal bit, and all other bits are treated as usual.
If the argument is nonnegative, the returned result will be equal to bits
, otherwise, the result will be equal to 2^32 + bits
.
To represent unsigned decimal constants, consider valueOf(long)
instead.
public static UnsignedInteger valueOf(long value)
Returns an UnsignedInteger
that is equal to value
, if possible. The inverse operation of longValue()
.
public static UnsignedInteger valueOf(BigInteger value)
Returns a UnsignedInteger
representing the same value as the specified BigInteger
. This is the inverse operation of bigIntegerValue()
.
IllegalArgumentException
- if value
is negative or value >= 2^32
public static UnsignedInteger valueOf(String string)
Returns an UnsignedInteger
holding the value of the specified String
, parsed as an unsigned int
value.
NumberFormatException
- if the string does not contain a parsable unsigned int
valuepublic static UnsignedInteger valueOf(String string, int radix)
Returns an UnsignedInteger
holding the value of the specified String
, parsed as an unsigned int
value in the specified radix.
NumberFormatException
- if the string does not contain a parsable unsigned int
valuepublic UnsignedInteger plus(UnsignedInteger val)
Returns the result of adding this and val
. If the result would have more than 32 bits, returns the low 32 bits of the result.
public UnsignedInteger minus(UnsignedInteger val)
Returns the result of subtracting this and val
. If the result would be negative, returns the low 32 bits of the result.
@GwtIncompatible(value="Does not truncate correctly") public UnsignedInteger times(UnsignedInteger val)
Returns the result of multiplying this and val
. If the result would have more than 32 bits, returns the low 32 bits of the result.
public UnsignedInteger dividedBy(UnsignedInteger val)
Returns the result of dividing this by val
.
ArithmeticException
- if val
is zeropublic UnsignedInteger mod(UnsignedInteger val)
Returns this mod val
.
ArithmeticException
- if val
is zeropublic int intValue()
Returns the value of this UnsignedInteger
as an int
. This is an inverse operation to fromIntBits(int)
.
Note that if this UnsignedInteger
holds a value >= 2^31
, the returned value will be equal to this - 2^32
.
public long longValue()
Returns the value of this UnsignedInteger
as a long
.
public float floatValue()
Returns the value of this UnsignedInteger
as a float
, analogous to a widening primitive conversion from int
to float
, and correctly rounded.
floatValue
in class Number
public double doubleValue()
Returns the value of this UnsignedInteger
as a float
, analogous to a widening primitive conversion from int
to double
, and correctly rounded.
doubleValue
in class Number
public BigInteger bigIntegerValue()
Returns the value of this UnsignedInteger
as a BigInteger
.
public int compareTo(UnsignedInteger other)
Compares this unsigned integer to another unsigned integer. Returns 0
if they are equal, a negative number if this < other
, and a positive number if this > other
.
compareTo
in interface Comparable<UnsignedInteger>
public String toString()
Returns a string representation of the UnsignedInteger
value, in base 10.
public String toString(int radix)
Returns a string representation of the UnsignedInteger
value, in base radix
. If radix < Character.MIN_RADIX
or radix > Character.MAX_RADIX
, the radix 10
is used.