Spec-Zone.ru › Dart 2

dart:core

Класс BigInt

Целочисленное значение произвольно большой величины.

Большие целые числа имеют знак и могут содержать произвольное количество значащих цифр, ограниченное только объёмом памяти.

Чтобы создать большое целое число из указанного числа, используйте BigInt.from.

var bigInteger = BigInt.from(-1); // -1
bigInteger = BigInt.from(0.9999); // 0
bigInteger = BigInt.from(-10.99); // -10
bigInteger = BigInt.from(0x7FFFFFFFFFFFFFFF); // 9223372036854775807
bigInteger = BigInt.from(1e+30); // 1000000000000000019884624838656

Чтобы разобрать большое целое число из строки, используйте parse или tryParse.

var value = BigInt.parse('0x1ffffffffffffffff'); // 36893488147419103231
value = BigInt.parse('12345678901234567890'); // 12345678901234567890

Чтобы проверить, можно ли представить большое целое число как int без потери точности, используйте isValidInt.

print(bigNumber.isValidInt); // false

Чтобы преобразовать большое целое число в int, используйте toInt. Чтобы преобразовать большое целое число в double, используйте toDouble.

var bigValue = BigInt.from(10).pow(3);
print(bigValue.isValidInt); // true
print(bigValue.toInt()); // 1000
print(bigValue.toDouble()); // 1000.0

См. также:

  • int: целое число.
  • double: число с плавающей точкой двойной точности.
  • num: суперкласс для int и double.
  • Числа в Обзоре языка Dart.
Реализуемые типы
  • Comparable<BigInt>

Конструкторы

BigInt.from(num value)
фабричный
Создаёт большое целое число из указанного value числа.

Свойства

bitLength → int
только для чтения
Возвращает минимальное количество битов, необходимое для хранения этого большого целого числа.
hashCode → int
только для чтенияунаследовано
Хеш-код этого объекта.
isEven → bool
только для чтения
Является ли это большое целое число чётным.
isNegative → bool
только для чтения
Является ли это число отрицательным.
isOdd → bool
только для чтения
Является ли это большое целое число нечётным.
isValidInt → bool
только для чтения
Можно ли представить это большое целое число как int без потери точности.
runtimeType → Type
только для чтенияунаследовано
Представление типа объекта во время выполнения.
sign → int
только для чтения
Возвращает знак этого большого целого числа.

Методы

abs() → BigInt
Возвращает абсолютное значение этого целого числа.
compareTo(BigInt other) → int
переопределение
Сравнивает это значение с other.
gcd(BigInt other) → BigInt
Возвращает наибольший общий делитель этого большого целого числа и other.
modInverse(BigInt modulus) → BigInt
Возвращает мультипликативную обратную величину этого большого целого числа по модулю modulus.
modPow(BigInt exponent, BigInt modulus) → BigInt
Возвращает это целое число в степени exponent по модулю modulus.
noSuchMethod(Invocation invocation) → dynamic
унаследовано
Вызывается при обращении к несуществующему методу или свойству.
pow(int exponent) → BigInt
Возвращает this в степени exponent.
remainder(BigInt other) → BigInt
Возвращает остаток от деления this на other с отбрасыванием дробной части.
toDouble() → double
Возвращает это значение BigInt как double.
toInt() → int
Возвращает это значение BigInt как int.
toRadixString(int radix) → String
Преобразует это значение в строковое представление в указанной системе счисления radix.
toSigned(int width) → BigInt
Возвращает младшие width битов этого целого числа, распространяя старший сохранённый бит до знака. Это эквивалентно усечению значения до width битов с использованием знакового представления в дополнительном коде. Возвращённое значение имеет одинаковые значения битов во всех позициях выше width.
toString() → String
переопределение
Возвращает строковое представление этого целого числа.
toUnsigned(int width) → BigInt
Возвращает младшие width битов этого большого целого числа как неотрицательное число (то есть беззнаковое представление). Возвращённое значение содержит нули во всех позициях битов выше width.

Операторы

operator %(BigInt other) → BigInt
Оператор евклидова деления по модулю.
operator &(BigInt other) → BigInt
Побитовый оператор И.
operator *(BigInt other) → BigInt
Умножает other на это большое целое число.
operator +(BigInt other) → BigInt
Прибавляет other к этому большому целому числу.
operator -(BigInt other) → BigInt
Вычитает other из этого большого целого числа.
operator /(BigInt other) → double
Оператор деления с результатом типа double.
operator <(BigInt other) → bool
Является ли это большое целое число численно меньше other.
operator <<(int shiftAmount) → BigInt
Сдвигает биты этого целого числа влево на shiftAmount.
operator <=(BigInt other) → bool
Является ли other численно больше этого большого целого числа.
operator ==(Object other) → bool
унаследовано
Оператор равенства.
operator >(BigInt other) → bool
Является ли это большое целое число численно больше other.
operator >=(BigInt other) → bool
Является ли other численно меньше этого большого целого числа.
operator >>(int shiftAmount) → BigInt
Сдвигает биты этого целого числа вправо на shiftAmount.
operator ^(BigInt other) → BigInt
Побитовый оператор исключающего ИЛИ.
operator unary-() → BigInt
Возвращает отрицательное значение этого целого числа.
operator |(BigInt other) → BigInt
Побитовый оператор ИЛИ.
operator ~() → BigInt
Побитовый оператор отрицания.
operator ~/(BigInt other) → BigInt
Оператор целочисленного деления с отбрасыванием дробной части.

Статические свойства

one → BigInt
только для чтения
Большое целое число со значением 1.
two → BigInt
только для чтения
Большое целое число со значением 2.
zero → BigInt
только для чтения
Большое целое число со значением 0.

Статические методы

parse(String source, {int? radix}) → BigInt
Разбирает source как, возможно, знаковый целочисленный литерал и возвращает его значение.
tryParse(String source, {int? radix}) → BigInt?
Разбирает source как, возможно, знаковый целочисленный литерал и возвращает его значение.

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-core/BigInt-class.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API