[프로그래밍언어][Java(자바)] (Class) Math - 최대값 & 최소값, 절대값, 제곱, 반올림, 난수 발생 등

728x90

 

Class Math

 

Modifier and Type Method Description
static int ( or long / double / float )
max(int a, int b) 둘 중 더 큰 값 반환
static int ( or long / double / float ) min(int a, int b) 둘 중 더 작은 값 반환
static int ( or long / double / float ) abs(int a) 절대값 반환
static double pow(double a, double b) a의 b 제곱 반환
static double sqrt(double a) a의 제곱근 반환
static int ( or long ) round(double a) 소수점 반올림한 수 반환
static double floor(double a) 소수점 내림한 수 반환
static double ceil(double a) 소수점 올림한 수 반환
static double random() 0.0 보다 크거나 같고 1.0 보다 작은 실수 반환

 

Modifier and Type Fields Description
static double PI π (원주율 : 원의 지름에 대한 원주의 비율)

 

( https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html )

 

 

▶  최대값

int a, b;
int max1 = Math.max(a, b);	// [way 1]
int max2 = a >= b ? a : b;	// [way 2]

 

▶  최소값

int a, b;
int min1 = Math.min(a, b);	// [way 1]
int min2 = a <= b ? a : b;	// [way 2]

 

▶  절대값

int a;
int abs1 = Math.abs(a);		// [way 1]
int abs2 = a < 0 ? -a : a;	// [way 2]

 

▶  (거듭) 제곱

int a, n;
int pow1 = (int) Math.pow(a, n);	// [way 1]
int pow2 = 1;						// [way 2]
for (int i = 0; i < n; ++i)
	pow2 *= a;
//int powTwo = 1 << n; // 2의 n 제곱

 

▶  반올림

// 소수점 n번째 자리까지 표현
double d; int n;  double m = Math.pow(10, n);
double round1 = Math.round(d * m) / m;									// [way 1]
double round2 = Double.parseDouble(String.format("%." + n + "f", d));	// [way 2]

 

▶  버림  ( != 내림 )

double d;
int cut1 = (int) d;									// [way 1]
double cut2 = d > 0 ? Math.floor(d) : Math.ceil(d);	// [way 2]

 

▶  난수

int n;
int random = (int) (Math.random() * (n + 1)) + 1; // 1 ~ n 사이의 난수

 

 

반응형