Класс Biglnteger
Все примитивные целые типы имеют ограниченный диапазон значений. В целочисленной арифметике Java нет переполнения, целые числа приводятся по модулю, равному диапазону значений.
Для того чтобы было можно производить целочисленные вычисления с любой разрядностью, в состав Java API введен класс
Biglnteger
, хранящийся в пакете
java.math
. Этот класс расширяет класс
Number
, следовательно, в нем переопределены методы
doubleValue(), floatValue(), intValue(), longValue()
. Методы
byteVaiue()
и
shortvalue()
не переопределены, а прямо наследуются от класса
Number
.
Действия с объектами класса
Biglnteger
не приводят ни к переполнению, ни к приведению по модулю. Если результат операции велик, то число разрядов просто увеличивается. Числа хранятся в двоичной форме с дополнительным кодом.
Перед выполнением операции числа выравниваются по длине распространением знакового разряда.
Шесть конструкторов класса создают объект класса
BigDecimai
из строки символов (знака числа и цифр) или из массива байтов.
Две константы —
ZERO
и
ONE
— моделируют нуль и единицу в операциях с объектами класса
Biglnteger
.
Метод
toByteArray()
преобразует объект в массив байтов.
Большинство методов класса
Biglnteger
моделируют целочисленные операции и функции, возвращая объект класса
Biglnteger
:
abs()
— возвращает объект, содержащий абсолютное значение числа, хранящегося в данном объекте
this
;
add(x)
— операция
this + х
;
and(x)
— операция
this & х
;
andNot(x)
— операция
this & (~х)
;
divide (x)
— операция
this / х
;
divideAndRemainder(х)
— возвращает массив из двух объектов класса
Biglnteger
, содержащих частное и остаток от деления
this
на
х
;
gcd(x)
— наибольший общий делитель, абсолютных, значений объекта
this
и аргумента
х
;
mах(х)
— наибольшее из значений объекта
this
и аргумента
х
;
min(x)
— наименьшее из значений объекта
this
и аргумента
х
;
mod(x)
— остаток от деления объекта
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий