개발 지식 기록/JAVA

[메서드 정리] Math

엉망진창좌충우돌 2023. 8. 6. 17:07

◎ abs

절대값을 반환(int, long, float, double)

int i = Math.abs(-10); //i=10

 

◎ ceil /floor

주어진 값을 올림/버림하여 반환(double타입)

double d = Math.ceil(10.1); //d  = 11.0
double d1 = Math.ceil(-10.1); //d1 = -10.0
double d2 = Math.ceil(10.000015);//d2 = 11.0

double d3 = Math.floor(10.8); //d3=10.0
double d4 = Math.floor(-10.8); //d4=-11.0

 

◎ max / min

주어진 두 값을 비교하여 큰 쪽 / 작은 쪽 반환

(int, long, float, double)

double d = Math.max(9.5,10.3); //d = 10.3

double d1 = Math.min(9.5,10.3); //d1 = 9.5

 

◎ random

0.0~1.0 범위의 임의의 double 값 반환(1.0은 범위에 포함되지 않는다.)

int i = (int)(Math.random()*10)+1 //1<=i<11

 

◎ rint

주어진 double 값과 가장 가까운 정수값을 double 형으로 반환. 단, 두 정수의 정가운데 있는 값(1.5, 2.5, 3.5등)은 짝수 반환

double d  = Math.rint(1.2); //d=1.0
double d2  = Math.rint(2.6); //d2=3.0
double d3  = Math.rint(3.5); //d3=4.0
double d4  = Math.rint(4.5); //d4=4.0

 

◎ round

소수점 첫째 자리에서 반올림한 정수값(long) 반환 (매개변수 값이 음수인 경우, round와 rint의 결과가 다르다)

long l = Math.round(1.2); //l = 1
long l2 = Math.round(2.6); //l2 = 3
long l3 = Math.round(-3.5); //l3 = -3
long l4 = Math.round(-4.6); //l4 = -5

double d = 90.7552;
double d2 = Math.round(d*100)/100.0; //d2 = 90.76
//소수점 셋째자리에서 반올림 시키기 위해 100 곱한 것. long 타입이니 100.0으로 나누어야 double 타입으로 나온다.