1. Math.round()
Math.round()는 실수를 정수로 반환해 주는 메서드다. 쉽게 말해 반올림을 해 준다고 볼 수 있는데 이 메서드로 실수를 특정 자릿수까지의 수로 표현해 줄 수 있다. 예를 들어 100.3564를 소수점 둘째 자릿수까지 표현해 100.36로 반환하도록 말이다. round()는 아래 공식 문서대로 int나 long 타입의 정수형을 반환하기 때문에 변형해 주어야 한다. 둘째 자릿수까지 원한다면 100을 곱하고 100.0으로 나누어 준다. 즉 소수점 수대로 곱해주고 나누어 주면 된다.
System.out.println(Math.round(100.3564 * 100) / 100.0); // 100.36
System.out.println(Math.round(100.3564 * 1000) / 1000.0); // 100.356
2. String.format()
이건 코드로 보는 게 더 빠를 것 같다. 코드를 보면 알겠지만 printf()로 사용하던 것과 별 차이가 없다. 다만 String 클래스를 앞에 명시한 것처럼 반환 타입이 String으로 나온다. 따라서 변수에 저장해야 할 때는 적절한 형변환이 필요하다.
System.out.println(String.format("%.2f", 100.3564)); // 100.36
System.out.println(String.format("%.3f", 100.3564)); // 100.356
(Java) 자바 소수점 반올림 Math.round(), String.format()
사용방법 :Math.round(값);메소드 사용시 값을 소수점 첫째 자리 까지 반올림 해준다.출력결과사용방법 :String.format("%.nf", num);n에 원하는 소수점 자리를 넣으면 된다.출력결과
velog.io
'JAVA' 카테고리의 다른 글
[JAVA] List, Set은 선언된 변수만으로 컬렉션의 내용이 찍힌다 (0) | 2025.01.11 |
---|---|
[JAVA] 천 단위마다 쉼표로 구분하기 - DecimalFormat, NumberFormat (1) | 2024.11.04 |
[JAVA] 열거형 enum (6) | 2024.10.09 |
[JAVA] 직렬화, 역직렬화 개념 (1) | 2024.10.02 |
[JAVA] 큐(Queue), 덱(Deque) 구현체, 메서드 정리 (0) | 2024.09.30 |