BigInt

final class BigInt extends ScalaNumber with ScalaNumericConversions with Serializable with Ordered[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 def byteValue: Byte

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
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 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
override def isValidByte: Boolean

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
override def isValidChar: Boolean

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
override def isValidInt: Boolean

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
override def isValidShort: Boolean

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
Returns:

true if this number has no decimal component, false otherwise.

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
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 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
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 def shortValue: Short

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 def toString(): String

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 parameters:
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