# BigInt

scala.math.BigInt
See theBigInt companion object
final class BigInt extends ScalaNumber,

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`.

## Attributes

Companion
object
Source
BigInt.scala
Graph
Supertypes
trait Ordered[BigInt]
class ScalaNumber
class Number
trait Serializable
class Object
trait Matchable
class Any

## Members list

### 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.

## Attributes

Source
BigInt.scala

#### Concrete methods

def %(that: BigInt): BigInt

Remainder of BigInts

Remainder of BigInts

## Attributes

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

Bitwise and of BigInts

Bitwise and of BigInts

## Attributes

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).

## Attributes

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

Multiplication of BigInts

Multiplication of BigInts

## Attributes

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

## Attributes

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

Subtraction of BigInts

Subtraction of BigInts

## Attributes

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

Division of BigInts

Division of BigInts

## Attributes

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).

## Attributes

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

Leftshift of BigInt

Leftshift of BigInt

## Attributes

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

(Signed) rightshift of BigInt

(Signed) rightshift of BigInt

## Attributes

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

Bitwise exclusive-or of BigInts

Bitwise exclusive-or of BigInts

## Attributes

Source
BigInt.scala
def abs: BigInt

Returns the absolute value of this BigInt

Returns the absolute value of this BigInt

Source
BigInt.scala

## Attributes

Source
BigInt.scala
def bitCount: Int

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.

## Attributes

Source
BigInt.scala
def bitLength: Int

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.

## Attributes

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.

## Attributes

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.

## Attributes

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

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.

## Attributes

Source
BigInt.scala
def compare(that: BigInt): Int

Compares this BigInt with the specified BigInt

Compares this BigInt with the specified BigInt

## Attributes

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.

## Attributes

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.

## Attributes

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.

## Attributes

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.

## Attributes

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.

## Attributes

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)

## Attributes

Source
BigInt.scala
override def hashCode(): Int

Returns the hash code for this BigInt.

Returns the hash code for this BigInt.

## Attributes

Definition Classes
Source
BigInt.scala
def intValue: Int

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.

## Attributes

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.

## Attributes

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`.

## Attributes

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`.

## Attributes

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`.

## Attributes

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`.

## Attributes

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`.

## Attributes

Definition Classes
Source
BigInt.scala

## Attributes

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`.

## Attributes

Definition Classes
Source
BigInt.scala

## Attributes

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.

## Attributes

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).

## Attributes

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

Returns the maximum of this and that

Returns the maximum of this and that

## Attributes

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

Returns the minimum of this and that

Returns the minimum of this and that

## Attributes

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

## Attributes

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).

## Attributes

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).

## Attributes

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).

## Attributes

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.

## Attributes

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.

## Attributes

Definition Classes
Source
BigInt.scala
def sign: BigInt

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.

## Attributes

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.

## Attributes

Source
BigInt.scala
def testBit(n: Int): Boolean

Returns true if and only if the designated bit is set.

Returns true if and only if the designated bit is set.

## Attributes

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.

## Attributes

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.

## Attributes

Source
BigInt.scala
override def toString(): String

Returns the decimal String representation of this BigInt.

Returns the decimal String representation of this BigInt.

## Attributes

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.

## Attributes

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

## Attributes

Source
BigInt.scala

Returns the bitwise complement of this BigInt

Returns the bitwise complement of this BigInt

Source
BigInt.scala

## Attributes

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)

## Attributes

Returns

the range

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

Bitwise or of BigInts

Bitwise or of BigInts

## Attributes

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`

## Attributes

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`.

## Attributes

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`.

## Attributes

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`.

## Attributes

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`.

## Attributes

Inherited from:
Ordered
Source
Ordered.scala
def toByte: Byte

Returns the value of this as a scala.Byte.

Returns the value of this as a scala.Byte. This may involve rounding or truncation.

## Attributes

Inherited from:
ScalaNumericAnyConversions
Source
ScalaNumericConversions.scala
def toChar: Char

Returns the value of this as a scala.Char.

Returns the value of this as a scala.Char. This may involve rounding or truncation.

## Attributes

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.

## Attributes

Inherited from:
ScalaNumericAnyConversions
Source
ScalaNumericConversions.scala
def toFloat: Float

Returns the value of this as a scala.Float.

Returns the value of this as a scala.Float. This may involve rounding or truncation.

## Attributes

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.

## Attributes

Inherited from:
ScalaNumericAnyConversions
Source
ScalaNumericConversions.scala
def toLong: Long

Returns the value of this as a scala.Long.

Returns the value of this as a scala.Long. This may involve rounding or truncation.

## Attributes

Inherited from:
ScalaNumericAnyConversions
Source
ScalaNumericConversions.scala
def toShort: Short

Returns the value of this as a scala.Short.

Returns the value of this as a scala.Short. This may involve rounding or truncation.

## Attributes

Inherited from:
ScalaNumericAnyConversions
Source
ScalaNumericConversions.scala
protected def unifiedPrimitiveEquals(x: Any): Boolean

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.

## Attributes

Inherited from:
ScalaNumericAnyConversions
Source
ScalaNumericConversions.scala
protected def unifiedPrimitiveHashcode: Int

## Attributes

Inherited from:
ScalaNumericAnyConversions
Source
ScalaNumericConversions.scala
{"ft_lang_label":"__label__en","ft_lang_prob":0.75462115,"math_prob":0.77010065,"size":14260,"snap":"2023-14-2023-23","text_gpt3_token_len":3201,"char_repetition_ratio":0.25371772,"word_repetition_ratio":0.6698235,"special_character_ratio":0.20729312,"punctuation_ratio":0.116888195,"nsfw_num_words":0,"has_unicode_error":false,"math_prob_llama3":0.96476805,"pos_list":[0],"im_url_duplicate_count":[null],"WARC_HEADER":"{\"WARC-Type\":\"response\",\"WARC-Date\":\"2023-06-01T21:58:48Z\",\"WARC-Record-ID\":\"<urn:uuid:7478e86f-421a-4fde-b828-fd01cb6e7287>\",\"Content-Length\":\"389992\",\"Content-Type\":\"application/http; msgtype=response\",\"WARC-Warcinfo-ID\":\"<urn:uuid:633e267d-3390-4881-aabf-c221986382c9>\",\"WARC-Concurrent-To\":\"<urn:uuid:8a39bac8-f01d-41b2-bb09-7d2558fa011a>\",\"WARC-IP-Address\":\"128.178.218.54\",\"WARC-Target-URI\":\"https://dotty.epfl.ch/api/scala/math/BigInt.html\",\"WARC-Payload-Digest\":\"sha1:WL7Y4MXW6J24KPTGZLTAMTXIE2S6M6C4\",\"WARC-Block-Digest\":\"sha1:6ULOHO5BOGHBQ35WEJEFSLEPB2QROASW\",\"WARC-Identified-Payload-Type\":\"text/html\",\"warc_filename\":\"/cc_download/warc_2023/CC-MAIN-2023-23/CC-MAIN-2023-23_segments_1685224648209.30_warc_CC-MAIN-20230601211701-20230602001701-00126.warc.gz\"}"}