Класът Math и пакетът java.math
КласътMathсъдържа методи, свързани с геометрията и тригонометрията и друга математика. Методите са внедрени катостатични, така че можете незабавно да извикате чрезMath.methodName()без да създавате екземпляр на класа.
Класът дефинира две константи от типdouble:EиPI.
Популярните методи за тригонометрични функции приемат параметър от типdouble, изразяващ ъгъла в радиани.
- грях (двойно d)
- cos (двойно d)
- тен (двойно d)
- asin (двойно d)
- acos (двойно d)
- атан (двойно d)
- atan2(двойно y, двойно x)
Има и хиперболични функции:sinh(),cosh(),tanh().
От тях степенуването е добре известно -pow(2.0, 3.0)ще върне 8.0.
Друг популярен метод за извличане на квадратния корен еsqrt(4.0). Ако аргументът е по-малък от нула, тогава се връщаNaN. Подобен методcbrt()извлича кубичния корен. Ако аргументът е отрицателен, тогава върнатата стойност също ще бъде отрицателна: -27.0-> -3,0.
- abs()- връща абсолютната стойност на аргумента
- ceil()- връща най-малкото цяло число, по-голямо от аргумента
- floor()- връща най-голямото цяло число, по-малко или равно на аргумента
- max()- връща по-голямото от две числа
- min()- връща по-малкото от две числа
- nextAfter()- връща следващата стойност след аргумента в дадената посока
- nextUp()- връща следващата стойност в положителна посока
- rint()- връща най-близкото цяло число до аргумента
- round()- връща аргумента, закръглен до най-близкото число
- ulp()- връщаразстоянието между стойността и най-близката по-голяма стойност
Изчислете най-голямото и най-малкото число от двете дадени стойности.
Големи числа
Ако нямате достатъчно основна точност на типа за представяне на цели и реални числа, можете да използвате класоветеBigIntegerиBigDecimalот пакетаjava.math, които са проектирани да извършват операции с числа, състоящи се от произволен брой цифри.
Статичният методvalueOf()се извиква за преобразуване на обикновено число в число с произволна точност (наречено голямо число):
Когато работите с големи числа, не можете да използвате обичайните математически операции с+или*и т.н. Вместо това използвайте специалните методиadd()(събиране),multiply()(умножаване),divide()(разделяне) и т.н.
В обичайната практика тези числа се използват рядко.