-
CHAPTER 9. (4) ★ Math 클래스란? (★ Math 클래스 메서드 포함)java/ㄴ CHAPTER 9. java.lang 패키지와 유용한 클래스 2020. 4. 23. 13:59
Math 클래스
- 기본적인 수학계산에 유용한 메서드
- 접근제어가 private (Math인스턴스 생성 불가)
ㄴ 왜? 클래스 내에 인스턴스 변수가 하나도 없어서 인스턴스 생성할 필요 없음
- 메서드 모두 static
- 상수는 2개 (E 자연로그, PI 원주율)
ex.
random() : 임의의 수 획득
round() : 반올림, 항상 소수점 첫째자리에서 반올림
rint() : 인자값에 가장 가까운 정수를 double 형으로 리턴
★
원하는 자리 수에서 반올림한 값 얻기
1. 10의 제곱 곱하기
2. 곱한 수로 나누기
ex.
90.7552 값을 소수점 셋째자리에서 반올림하고, 소수점 두 자리까지 값을 구하려면
1. 100 곱하기
90.7552 * 100 = 9075.52
2. Math.round() 사용
Math.round(9075.52) = 9076
3. 100.0으로 나누기
9076 / 100.0 = 90.76
9076 / 100 = 90
★ 정수형 간의 연산에서는 반올림이 이뤄지지 않음
★
Math 메서드
static int abs(int f)
- 주어진 값의 절대값 반환
ex.
int i = Math.abs(-10);
// i = 10
static double ceil(double a)
- 주어진 값을 올림하여 반환
ex.
double d = Math.ceil(10.1);
// d = 11
static double floor(double a)
- 주어진 값을 버림하여 반환
ex.
double d = Math.floor(10.9);
// d = 10
static int max(int a, int b)
- 주어진 두 값을 비교하여 큰 쪽 반환
ex.
double d = Math.max(9.5, 9.50001);
// d = 9.50001
static int min(int a, int b)
- 주어진 두 값을 비교하여 작은 쪽 반환
ex.
double d = Math.min(0, -1);
// d = -1
static double random()
- 0.0 ~ 1.0 범위의 임의의 double값 반환 (1.0은 범위 포함X)
ex.
int i = (int) (Math.random()*45 + 1);
// 1<= i < 45
static long round(double a)
- 소수점 첫째자리에서 반올림한 정수값 반환
ex.
long l = Math.round(9.5);
// l = 10'java > ㄴ CHAPTER 9. java.lang 패키지와 유용한 클래스' 카테고리의 다른 글
CHAPTER 9. (5) ★ 래퍼Wrapper 클래스란? (★ Number 클래스, 문자열 숫자로 변환, 오토박싱 언박싱 포함) (0) 2020.04.23 CHAPTER 9. (3) ★ StringBuffer 클래스란? (★ StringBuffer 메서드 포함) (0) 2020.04.23 CHAPTER 9. (2) ★ String클래스란? (★★★ String 클래스 생성자, 메서드 포함) (0) 2020.04.23 CHAPTER 9. (1) java.lang 패키지란? (★ Object 클래스 주요 메서드 포함) (0) 2020.04.23