BigInt

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

def this(bigInteger: BigInteger)

Public constructor present for compatibility.

Public constructor present for compatibility. Use the BigInt.apply companion object method instead.

Source
BigInt.scala

Concrete methods

def %(that: BigInt): BigInt

Remainder of BigInts

Remainder of BigInts

Source
BigInt.scala
def &(that: BigInt): BigInt

Bitwise and of BigInts

Bitwise and of BigInts

Source
BigInt.scala
def &~(that: BigInt): BigInt

Bitwise and-not of BigInts.

Bitwise and-not of BigInts. Returns a BigInt whose value is (this & ~that).

Source
BigInt.scala
def *(that: BigInt): BigInt

Multiplication of BigInts

Multiplication of BigInts

Source
BigInt.scala
def +(that: BigInt): BigInt

Addition of BigInts

Addition of BigInts

Source
BigInt.scala
def -(that: BigInt): BigInt

Subtraction of BigInts

Subtraction of BigInts

Source
BigInt.scala
def /(that: BigInt): BigInt

Division of BigInts

Division of BigInts

Source
BigInt.scala
def /%(that: BigInt): (BigInt, BigInt)

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
def <<(n: Int): BigInt

Leftshift of BigInt

Leftshift of BigInt

Source
BigInt.scala
def >>(n: Int): BigInt

(Signed) rightshift of BigInt

(Signed) rightshift of BigInt

Source
BigInt.scala
def ^(that: BigInt): BigInt

Bitwise exclusive-or of BigInts

Bitwise exclusive-or of BigInts

Source
BigInt.scala
def abs: BigInt

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
override

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
def compare(that: BigInt): Int

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
@nowarn("cat=other-non-cooperative-equals")
override
def equals(that: Any): Boolean

Compares this BigInt with the specified value for equality.

Compares this BigInt with the specified value for equality.

Definition Classes
Source
BigInt.scala
def equals(that: BigInt): Boolean

Compares this BigInt with the specified BigInt for equality.

Compares this BigInt with the specified BigInt for equality.

Source
BigInt.scala
def flipBit(n: Int): BigInt

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
def gcd(that: BigInt): BigInt

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
override
def hashCode(): Int

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
def isProbablePrime(certainty: Int): Boolean

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 Params
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
override
override

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
override
override

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
def max(that: BigInt): BigInt

Returns the maximum of this and that

Returns the maximum of this and that

Source
BigInt.scala
def min(that: BigInt): BigInt

Returns the minimum of this and that

Returns the minimum of this and that

Source
BigInt.scala
def mod(that: BigInt): BigInt

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 Params
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
def modPow(exp: BigInt, m: BigInt): BigInt

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
def pow(exp: Int): BigInt

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
def setBit(n: Int): BigInt

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
override

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
def signum: Int

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
def to(end: BigInt, step: BigInt): Inclusive[BigInt]

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
override

Returns the decimal String representation of this BigInt.

Returns the decimal String representation of this BigInt.

Definition Classes
Source
BigInt.scala
def toString(radix: Int): String

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
def until(end: BigInt, step: BigInt): Exclusive[BigInt]

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 Params
end

the end value of the range (exclusive)

step

the distance between elements (defaults to 1)

Returns

the range

Source
BigInt.scala
def |(that: BigInt): BigInt

Bitwise or of BigInts

Bitwise or of BigInts

Source
BigInt.scala

Inherited methods

def <(that: BigInt): Boolean

Returns true if this is less than that

Returns true if this is less than that

Inherited from
Ordered
Source
Ordered.scala
def <=(that: BigInt): Boolean

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
def >(that: BigInt): Boolean

Returns true if this is greater than that.

Returns true if this is greater than that.

Inherited from
Ordered
Source
Ordered.scala
def >=(that: BigInt): Boolean

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
def compareTo(that: BigInt): Int

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
def toInt: Int

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