Java 반올림, 내림, 올림 - round, ceil, floor
결과
결과
코드
public static void main(String[] args) {
double num = 3.14;
System.out.println("절대값 : " + Math.abs(num*-1));
System.out.println("올림 : " + Math.ceil(num));
System.out.println("내림 : " + Math.floor(num));
System.out.println("반올림 : " + Math.round(num));
System.out.println("소수점 아래 2째에서 반올림 : " + Math.round(num*10)/10.0);
}
Math 메소드
int abs(int num) | double abs(double num) : 절대값을 얻는다.
- int형 double형 둘다 사용할 수 있다.
- 절대값이므로 양수일 때는 그대로며 음수일 때는 -1을 곱한 결과와 같다.
double ceil(double num) : 올림값을 얻는다.
- 올림값을 얻어 double형으로 리턴해준다.
double floor(double num) : 내림값을 얻는다.
- 내림값을 얻어 double형으로 리턴해준다.
long round(double num) : 반올림 값을 얻는다.
- 넘겨받은 값을 반올림하여 long형으로 리턴한다.
- round() 메소드는 항상 소수점 1째 자리에서 반올림해준다.
- 소수점 아래 n번 째에서 반올림을 시도하고자 한다면 먼저 10n-1를 곱해준 후 round로 반올림한다.
그리고 다시 10n-1을 나누어줌으로써 얻을 수 있다.
※ 주의할점으로는 round의 리턴형이 long이므로 이를 int형으로 나누어 버리면는 변수가 정수형이되어버린다.
따라서, 위에서 코드를 보면 10.0 나누어준 것처럼 Double형으로 나누어줌으로써 Double형으로 자동 형변환이 일어나도록하여야 소수점 아래 값들을 얻을 수 있다.
'JAVA > 심화' 카테고리의 다른 글
Java 배열 Arrays 클래스 (0) | 2020.03.26 |
---|---|
Java DecimalFormat 천단위마다 쉼표 입력 (0) | 2020.03.26 |
Java Date, Calendar, SimpleDateFormat 시간 구하기 (0) | 2020.03.25 |
Java max, min, random - 랜덤 수 구하기 (0) | 2020.03.25 |
Java StringBuilder, StringBuffer (0) | 2020.03.24 |