Документация по Java Math API
Класс java.lang.Math предоставляет методы для выполнения базовых математических операций, таких как тригонометрические функции, логарифмы, возведение в степень и другие. Этот класс является частью стандартной библиотеки Java и не требует создания экземпляров, так как все методы являются static.
Обзор
Представь, что Math – это «карманный калькулятор» Java.
Mathживёт в пакетеjava.lang, поэтому ничего импортировать не нужно.- Все методы
static: мы всегда пишемMath.что‑то(...).
Что чаще всего нужно олимпиаднику и «боевому» программисту:
- быстро считать модуль, минимум, максимум и корень;
- аккуратно округлять числа;
- пользоваться константами
Math.PIиMath.E.
Мини‑пример:
int a = -7;
int b = 10;
int best = Math.max(a, b); // 10
int dist = Math.abs(a - b); // 17
double r = 5;
double circle = 2 * Math.PI * r; // длина окружности
Этого достаточно как первый слой. Остальные методы собраны ниже в таблицах – к ним можно возвращаться по мере надобности.
Константы
| Константа | Описание | Значение |
|---|---|---|
E |
Основание натурального логарифма | ~2.718281828459045 |
PI |
Отношение длины окружности к её диаметру | ~3.141592653589793 |
Основные методы
Ниже приведены наиболее часто используемые методы класса Math.
Арифметические методы
| Метод | Пояснение | Пример |
|---|---|---|
Math.abs(x) |
Модуль числа \(x\), всегда \(\ge 0\). | Math.abs(-5.0) → 5.0 |
Math.max(a, b) |
Возвращает большее из двух чисел \(a\) и \(b\). | Math.max(3.5, 7.2) → 7.2 |
Math.min(a, b) |
Возвращает меньшее из двух чисел \(a\) и \(b\). | Math.min(3.5, 7.2) → 3.5 |
Math.sqrt(a) |
Квадратный корень числа \(a\): \(\sqrt{a}\). | Math.sqrt(16.0) → 4.0 |
Тригонометрические методы
| Метод | Пояснение | Пример |
|---|---|---|
Math.sin(x) |
Синус угла \(x\) в радианах. | Math.sin(Math.PI / 2) → 1.0 |
Math.cos(x) |
Косинус угла \(x\) в радианах. | Math.cos(0) → 1.0 |
Math.tan(x) |
Тангенс угла \(x\) в радианах. | Math.tan(Math.PI / 4) → примерно 1.0 |
Экспоненциальные и логарифмические методы
| Метод | Пояснение | Пример |
|---|---|---|
Math.exp(a) |
Возвращает \(e^a\), где \(e \approx 2{.}71828\). | Math.exp(1.0) → примерно 2.718 |
Math.log(a) |
Натуральный логарифм \(\ln a\) (по основанию \(e\)). | Math.log(Math.E) → 1.0 |
Math.pow(a, b) |
Возвращает \(a^b\) — число \(a\), возведённое в степень \(b\). | Math.pow(2.0, 3.0) → 8.0 |
Методы округления
| Метод | Пояснение | Пример |
|---|---|---|
Math.round(x) |
Округляет \(x\) до ближайшего целого. | Math.round(3.7) → 4 |
Math.floor(x) |
\(\lfloor x \rfloor\) — целая часть, не превосходящая \(x\). | Math.floor(3.7) → 3.0 |
Math.ceil(x) |
\(\lceil x \rceil\) — целое, не меньшее \(x\). | Math.ceil(3.1) → 4.0 |
Пример использования
public class MathExample {
public static void main(String[] args) {
double x = -10.5;
double y = 4.0;
System.out.println("Абсолютное значение: " + Math.abs(x)); // 10.5
System.out.println("Квадратный корень: " + Math.sqrt(y)); // 2.0
System.out.println("Возведение в степень: " + Math.pow(y, 2)); // 16.0
System.out.println("Синус PI/2: " + Math.sin(Math.PI / 2)); // 1.0
System.out.println("Округление: " + Math.round(x)); // -10
}
}