Wednesday, September 27, 2006
자바/Java] 엑셀 ROUND() 함수 구현 - Excel 반올림
자바 반올림은 원칙적으로, 실수를 정수로 반올림하는 기능만 있었습니다. 그래서 실수를 지정한 소수점 자리수만큼 반올림하여 실수로 되돌려주는 함수(메소드)를 만들었습니다. 반올림 함수는 엑셀의 것이 가장 상식적이고 편리한데, 엑셀의 ROUND() 함수와 비슷하게 작동하도록 했습니다. 다만 음수 자릿수는 지정할 수 없습니다.
다음 소스 아래쪽에 정의되어 있는 excelRound() 라는 메소드가 핵심입니다.
사용법은 excelRound(실수, 소수점 자리 지정) 의 형식입니다.
파일명: Foo.java
위의 코드를 실행하면, 출력 결과가 1.4446 입니다. 그리고
엑셀에서,
=ROUND(1.44455555555, 4)
이렇게 하면
1.4446
역시 같은 결과가 나옵니다.
▶▶ 자바/Java] 정수로 반올림, 실수로 반올림 (소수점 몇째 자리까지) - Round To Long, Double
다음 소스 아래쪽에 정의되어 있는 excelRound() 라는 메소드가 핵심입니다.
사용법은 excelRound(실수, 소수점 자리 지정) 의 형식입니다.
소수점 자리 지정하여, 엑셀 형식으로 반올림 예제
파일명: Foo.java
public class Foo {
public static void main(String args[]) {
double dResult = excelRound(1.44455555555, 4);
System.out.println(dResult);
// 출력 결과: 1.4446
}
public static double excelRound(double dNumber, int intNumDigits) {
return Double.parseDouble(
String.format(
"%." + Integer.toString(intNumDigits) + "f", dNumber)
);
}
}
public static void main(String args[]) {
double dResult = excelRound(1.44455555555, 4);
System.out.println(dResult);
// 출력 결과: 1.4446
}
public static double excelRound(double dNumber, int intNumDigits) {
return Double.parseDouble(
String.format(
"%." + Integer.toString(intNumDigits) + "f", dNumber)
);
}
}
위의 코드를 실행하면, 출력 결과가 1.4446 입니다. 그리고
엑셀에서,
=ROUND(1.44455555555, 4)
이렇게 하면
1.4446
역시 같은 결과가 나옵니다.
▶▶ 자바/Java] 정수로 반올림, 실수로 반올림 (소수점 몇째 자리까지) - Round To Long, Double
tag: java
자바 | Java
<< Home