A type with efficient encoding of arbitrary integers.
It wraps java.math.BigInteger
, with optimization for small values that can be encoded in a Long
.
- Companion:
- object
- Source:
- BigInt.scala
Value members
Constructors
Public constructor present for compatibility.
Public constructor present for compatibility. Use the BigInt.apply companion object method instead.
- Source:
- BigInt.scala
Concrete methods
Bitwise and-not of BigInts.
Bitwise and-not of BigInts. Returns a BigInt whose value is (this & ~that).
- Source:
- BigInt.scala
Returns a pair of two BigInts containing (this / that) and (this % that).
Returns a pair of two BigInts containing (this / that) and (this % that).
- Source:
- BigInt.scala
Returns the absolute value of this BigInt
Returns the absolute value of this BigInt
- Source:
- BigInt.scala
Returns the number of bits in the two's complement representation of this BigInt that differ from its sign bit.
Returns the number of bits in the two's complement representation of this BigInt that differ from its sign bit.
- Source:
- BigInt.scala
Returns the number of bits in the minimal two's-complement representation of this BigInt, excluding a sign bit.
Returns the number of bits in the minimal two's-complement representation of this BigInt, excluding a sign bit.
- Source:
- BigInt.scala
Converts this BigInt to a byte.
Converts this BigInt to a byte. If the BigInt is too big to fit in a byte, only the low-order 8 bits are returned. Note that this conversion can lose information about the overall magnitude of the BigInt value as well as return a result with the opposite sign.
- Definition Classes
- Source:
- BigInt.scala
Converts this BigInt to a char.
Converts this BigInt to a char. If the BigInt is too big to fit in a char, only the low-order 16 bits are returned. Note that this conversion can lose information about the overall magnitude of the BigInt value and that it always returns a positive result.
- Source:
- BigInt.scala
Returns a BigInt whose value is equivalent to this BigInt with the designated bit cleared.
Returns a BigInt whose value is equivalent to this BigInt with the designated bit cleared.
- Source:
- BigInt.scala
Compares this BigInt with the specified BigInt
Compares this BigInt with the specified BigInt
- Source:
- BigInt.scala
Converts this BigInt
to a double
.
Converts this BigInt
to a double
.
if this BigInt
has too great a magnitude to represent as a double,
it will be converted to Double.NEGATIVE_INFINITY
or
Double.POSITIVE_INFINITY
as appropriate.
- Source:
- BigInt.scala
Compares this BigInt with the specified value for equality.
Compares this BigInt with the specified value for equality.
- Definition Classes
- Source:
- BigInt.scala
Compares this BigInt with the specified BigInt for equality.
Compares this BigInt with the specified BigInt for equality.
- Source:
- BigInt.scala
Returns a BigInt whose value is equivalent to this BigInt with the designated bit flipped.
Returns a BigInt whose value is equivalent to this BigInt with the designated bit flipped.
- Source:
- BigInt.scala
Converts this BigInt
to a float
.
Converts this BigInt
to a float
.
If this BigInt
has too great a magnitude to represent as a float,
it will be converted to Float.NEGATIVE_INFINITY
or
Float.POSITIVE_INFINITY
as appropriate.
- Source:
- BigInt.scala
Returns the greatest common divisor of abs(this) and abs(that)
Returns the greatest common divisor of abs(this) and abs(that)
- Source:
- BigInt.scala
Returns the hash code for this BigInt.
Returns the hash code for this BigInt.
- Definition Classes
- Source:
- BigInt.scala
Converts this BigInt to an int.
Converts this BigInt to an int. If the BigInt is too big to fit in an int, only the low-order 32 bits are returned. Note that this conversion can lose information about the overall magnitude of the BigInt value as well as return a result with the opposite sign.
- Source:
- BigInt.scala
Returns true if this BigInt is probably prime, false if it's definitely composite.
Returns true if this BigInt is probably prime, false if it's definitely composite.
- Value parameters:
- certainty
a measure of the uncertainty that the caller is willing to tolerate: if the call returns true the probability that this BigInt is prime exceeds (1 - 1/2 ^ certainty). The execution time of this method is proportional to the value of this parameter.
- Source:
- BigInt.scala
Returns true
iff this has a zero fractional part, and is within the
range of scala.Byte MinValue and MaxValue; otherwise returns false
.
Returns true
iff this has a zero fractional part, and is within the
range of scala.Byte MinValue and MaxValue; otherwise returns false
.
- Definition Classes
- Source:
- BigInt.scala
Returns true
iff this has a zero fractional part, and is within the
range of scala.Char MinValue and MaxValue; otherwise returns false
.
Returns true
iff this has a zero fractional part, and is within the
range of scala.Char MinValue and MaxValue; otherwise returns false
.
- Definition Classes
- Source:
- BigInt.scala
Returns true
iff this can be represented exactly by scala.Double; otherwise returns false
.
Returns true
iff this can be represented exactly by scala.Double; otherwise returns false
.
- Source:
- BigInt.scala
Returns true
iff this can be represented exactly by scala.Float; otherwise returns false
.
Returns true
iff this can be represented exactly by scala.Float; otherwise returns false
.
- Source:
- BigInt.scala
Returns true
iff this has a zero fractional part, and is within the
range of scala.Int MinValue and MaxValue; otherwise returns false
.
Returns true
iff this has a zero fractional part, and is within the
range of scala.Int MinValue and MaxValue; otherwise returns false
.
- Definition Classes
- Source:
- BigInt.scala
Returns true
iff this has a zero fractional part, and is within the
range of scala.Short MinValue and MaxValue; otherwise returns false
.
Returns true
iff this has a zero fractional part, and is within the
range of scala.Short MinValue and MaxValue; otherwise returns false
.
- Definition Classes
- Source:
- BigInt.scala
Converts this BigInt to a long.
Converts this BigInt to a long. If the BigInt is too big to fit in a long, only the low-order 64 bits are returned. Note that this conversion can lose information about the overall magnitude of the BigInt value as well as return a result with the opposite sign.
- Source:
- BigInt.scala
Returns the index of the rightmost (lowest-order) one bit in this BigInt (the number of zero bits to the right of the rightmost one bit).
Returns the index of the rightmost (lowest-order) one bit in this BigInt (the number of zero bits to the right of the rightmost one bit).
- Source:
- BigInt.scala
Returns a BigInt whose value is (this mod that).
Returns a BigInt whose value is (this mod that).
This method differs from %
in that it always returns a non-negative BigInt.
- Value parameters:
- that
A positive number
- Source:
- BigInt.scala
Returns a BigInt whose value is (the inverse of this modulo m).
Returns a BigInt whose value is (the inverse of this modulo m).
- Source:
- BigInt.scala
Returns a BigInt whose value is (this raised to the power of exp modulo m).
Returns a BigInt whose value is (this raised to the power of exp modulo m).
- Source:
- BigInt.scala
Returns a BigInt whose value is (this raised to the power of exp).
Returns a BigInt whose value is (this raised to the power of exp).
- Source:
- BigInt.scala
Returns a BigInt whose value is equivalent to this BigInt with the designated bit set.
Returns a BigInt whose value is equivalent to this BigInt with the designated bit set.
- Source:
- BigInt.scala
Converts this BigInt to a short.
Converts this BigInt to a short. If the BigInt is too big to fit in a short, only the low-order 16 bits are returned. Note that this conversion can lose information about the overall magnitude of the BigInt value as well as return a result with the opposite sign.
- Definition Classes
- Source:
- BigInt.scala
Returns the sign of this BigInt; -1 if it is less than 0, +1 if it is greater than 0, 0 if it is equal to 0.
Returns the sign of this BigInt; -1 if it is less than 0, +1 if it is greater than 0, 0 if it is equal to 0.
- Source:
- BigInt.scala
Returns the sign of this BigInt; -1 if it is less than 0, +1 if it is greater than 0, 0 if it is equal to 0.
Returns the sign of this BigInt; -1 if it is less than 0, +1 if it is greater than 0, 0 if it is equal to 0.
- Source:
- BigInt.scala
Returns true if and only if the designated bit is set.
Returns true if and only if the designated bit is set.
- Source:
- BigInt.scala
Like until, but inclusive of the end value.
Like until, but inclusive of the end value.
- Source:
- BigInt.scala
Returns a byte array containing the two's-complement representation of this BigInt.
Returns a byte array containing the two's-complement representation of this BigInt. The byte array will be in big-endian byte-order: the most significant byte is in the zeroth element. The array will contain the minimum number of bytes required to represent this BigInt, including at least one sign bit.
- Source:
- BigInt.scala
Returns the decimal String representation of this BigInt.
Returns the decimal String representation of this BigInt.
- Definition Classes
- Source:
- BigInt.scala
Returns the String representation in the specified radix of this BigInt.
Returns the String representation in the specified radix of this BigInt.
- Source:
- BigInt.scala
Returns a BigInt whose value is the negation of this BigInt
Returns a BigInt whose value is the negation of this BigInt
- Source:
- BigInt.scala
Returns the bitwise complement of this BigInt
Returns the bitwise complement of this BigInt
- Source:
- BigInt.scala
Create a NumericRange[BigInt]
in range [start;end)
with the specified step, where start is the target BigInt.
Create a NumericRange[BigInt]
in range [start;end)
with the specified step, where start is the target BigInt.
- Value parameters:
- end
the end value of the range (exclusive)
- step
the distance between elements (defaults to 1)
- Returns:
the range
- Source:
- BigInt.scala
Inherited methods
Returns true if this
is less than that
Returns true if this
is less than that
- Inherited from:
- Ordered
- Source:
- Ordered.scala
Returns true if this
is less than or equal to that
.
Returns true if this
is less than or equal to that
.
- Inherited from:
- Ordered
- Source:
- Ordered.scala
Returns true if this
is greater than that
.
Returns true if this
is greater than that
.
- Inherited from:
- Ordered
- Source:
- Ordered.scala
Returns true if this
is greater than or equal to that
.
Returns true if this
is greater than or equal to that
.
- Inherited from:
- Ordered
- Source:
- Ordered.scala
Result of comparing this
with operand that
.
Result of comparing this
with operand that
.
- Inherited from:
- Ordered
- Source:
- Ordered.scala
Returns the value of this as a scala.Byte.
Returns the value of this as a scala.Byte. This may involve rounding or truncation.
- Inherited from:
- ScalaNumericAnyConversions
- Source:
- ScalaNumericConversions.scala
Returns the value of this as a scala.Char.
Returns the value of this as a scala.Char. This may involve rounding or truncation.
- Inherited from:
- ScalaNumericAnyConversions
- Source:
- ScalaNumericConversions.scala
Returns the value of this as a scala.Double.
Returns the value of this as a scala.Double. This may involve rounding or truncation.
- Inherited from:
- ScalaNumericAnyConversions
- Source:
- ScalaNumericConversions.scala
Returns the value of this as a scala.Float.
Returns the value of this as a scala.Float. This may involve rounding or truncation.
- Inherited from:
- ScalaNumericAnyConversions
- Source:
- ScalaNumericConversions.scala
Returns the value of this as an scala.Int.
Returns the value of this as an scala.Int. This may involve rounding or truncation.
- Inherited from:
- ScalaNumericAnyConversions
- Source:
- ScalaNumericConversions.scala
Returns the value of this as a scala.Long.
Returns the value of this as a scala.Long. This may involve rounding or truncation.
- Inherited from:
- ScalaNumericAnyConversions
- Source:
- ScalaNumericConversions.scala
Returns the value of this as a scala.Short.
Returns the value of this as a scala.Short. This may involve rounding or truncation.
- Inherited from:
- ScalaNumericAnyConversions
- Source:
- ScalaNumericConversions.scala
Should only be called after all known non-primitive types have been excluded.
Should only be called after all known non-primitive types have been excluded. This method won't dispatch anywhere else after checking against the primitives to avoid infinite recursion between equals and this on unknown "Number" variants.
Additionally, this should only be called if the numeric type is happy to be converted to Long, Float, and Double. If for instance a BigInt much larger than the Long range is sent here, it will claim equality with whatever Long is left in its lower 64 bits. Or a BigDecimal with more precision than Double can hold: same thing. There's no way given the interface available here to prevent this error.
- Inherited from:
- ScalaNumericAnyConversions
- Source:
- ScalaNumericConversions.scala