round() 함수
반올림을 하려면 Math.round()를 사용하면 된다. 이 메서드는 소수점 첫째 자리에서 반올림 한 결과를 정수로 반환한다.
long result = Math.round(4.32);
만약 소수점 첫째 자리가 아닌 다른 자리에서 반올림을 하려면 10의 n승으로 곱하고 나누어야 한다.
class ex {
public static void main(String args[]) {
double pi = 3.141592;
double shortPi = Math.round(pi * 1000) / 1000.0;
System.out.println(shortPi);
}
}
예제 풀이
Math.round(pi * 1000) / 1000.0
Math.round(3.141592 * 1000) / 1000.0
Math.round(3141.592) / 1000.0
3142 / 1000.0
3.142
위 과정에서 1000.0이 아니라 1000으로 나누었다면 int와 int 사이의 나눗셈이므로 결과는 3이된다.
쉽게 이야기해서 * 100을 했을 때 소수점 2자리까지 남기기.
* 1000을 했을때 소수점 3자리까지 남기기.
즉, 0의 수 만큼 소수점이 남게된다.