Math클래스는 기본적인 수학계산에 유용한 메서드로 구성돼 있다. Math클래스의 생성자는 접근 제어자가 private이기 때문에 다른 클래스에서 인스턴스를 생성할 수 없도록 되어있다. 인스턴스변수가 하나도 없고 모두 static으로 된 메서드 밖에없으니 인스턴스를 생성할 필요도 없긴 하다.
Math클래스에는 아래와 같은 두 개의 상수만 존재하고 변수는 없다.
public static final doube E = 2.7182818284590452354; // 자연로그의 밑
public static final doube PI = 3.14159265358979323846; // 원주율
round()메서드는 소수점 첫째자리에서 반올림을 한 후 long(정수)값을 결과로 반환한다. 무조건 천째자리에서 반올림 하기 때문에, 2째 3째자리에서 반올림 하고싶다면 그에 맞게 10이나 100을 곱한 후 round를 사용하고, 그 후에 다시 10이나 100을 곱하면 된다.
1. 원래 값에 100을 곱한다.
90.1234 * 100 → 9012.34
2. 위의 결과에 Math.round()를 사용한다.
Math.round(9012.34) → 9012
3. 위의 결과를 다시 100.0(float)으로 나눈다.
9012 / 100.0 → 90.12
소숫점 3째자리에서 반올림 한것과 같은 효과를 낸다.
static double abs(정수/실수 a); // 절대값을 반환한다 가능 자료형: 정수형, 실수형
static double ceil(double a) // 주어진 값을 올림하여 반환한다.
static double floor(double a) // 주어진 값을 버림하여 반환한다.
static 정수/실수 max(정수/실수 a, 정수/실수 b) // a와 b중 더 큰 값을 반환한다.
static 정수/실수 min(정수/실수 a, 정수/실수 b) // a와 b중 더 작은 값을 반환한다.
static double random() // 0.0 =< x < 1 범위의 실수나 0을 반환한다.