Spec-Zone.ru › Dart 2

dart:core

Класс BigInt

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

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

Для создания целого числа 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

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

print(bigNumber.isValidInt); // false

Для преобразования целого числа BigInt в int используйте toInt. Для преобразования целого числа BigInt в 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)
factory
Создаёт целое число BigInt из заданного value числа.

Свойства

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

Методы

abs() → BigInt
Возвращает абсолютное значение этого целого числа.
compareTo(BigInt other) → int
переопределено
Сравнивает это с other.
gcd(BigInt other) → BigInt
Возвращает наибольший общий делитель этого целого числа BigInt и other.
modInverse(BigInt modulus) → BigInt
Возвращает модулярно обратную величину этого целого числа 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
Преобразует this в строковое представление в заданном radix.
toSigned(int width) → BigInt
Возвращает наименее значащие width бита этого целого числа, расширяя самый высокий сохранённый бит до знака. Это то же самое, что усечение значения для соответствия width битам с использованием представления со знаком 2-дополнительных. Возвращаемое значение имеет то же битовое значение во всех позициях, более высоких, чем width.
toString() → String
переопределено
Возвращает строковое представление этого целого числа.
toUnsigned(int width) → BigInt
Возвращает наименее значащие width бита этого целого числа BigInt как неотрицательное число (т. е. представление без знака). Возвращаемое значение имеет нули во всех позициях битов, более высоких, чем width.

Операторы

operator %(BigInt other) → BigInt
Оператор евклидова модуля.
operator &(BigInt other) → BigInt
Битовый оператор И.
operator *(BigInt other) → BigInt
Умножает other на это целое число BigInt.
operator +(BigInt other) → BigInt
Складывает other к этому целому числу BigInt.
operator -(BigInt other) → BigInt
Вычитает other из этого целого числа BigInt.
operator /(BigInt other) → double
Оператор деления с плавающей точкой.
operator <(BigInt other) → bool
Является ли это целое число BigInt меньше, чем other.
operator <<(int shiftAmount) → BigInt
Сдвигает биты этого целого числа влево на shiftAmount.
operator <=(BigInt other) → bool
Является ли other больше, чем это целое число BigInt.
operator ==(Object other) → bool
унаследованное
Оператор равенства.
operator >(BigInt other) → bool
Является ли это целое число BigInt больше, чем other.
operator >=(BigInt other) → bool
Является ли other меньше, чем это целое число BigInt.
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.18.5/dart-core/BigInt-class.html

Spec-Zone.ru

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