내 프로젝트에서 이중 값을 사용하고 처음 두 자리를 항상 0으로 표시하고 싶습니다. 반올림을 위해이 함수를 사용하고 만약 내가 인쇄 한 값이 3.47233322이면 (정확하게) 3.47을 출력합니다. 하지만 인쇄 할 때, 예를 들어, 값 2는 2.0을 인쇄합니다.Java : double : 항상 두 자리 숫자를 표시하는 방법
public static double round(double d) {
BigDecimal bd = new BigDecimal(d);
bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP);
return bd.doubleValue();
}
2.00을 인쇄하고 싶습니다!
문자열을 사용하지 않고이 작업을 수행 할 수있는 방법이 있습니까?
감사합니다.
EDIT : 답변 해 주셔서 감사합니다. 내가 검색 한 내용을 분명히 알지 못한다는 것을 이해합니다. (그리고이 문제로 인해 유감입니다.) 번호 뒤에 두 자리를 인쇄하는 방법을 알고 있습니다. 당신이 제안한 솔루션을 사용하여 ... 내가 원하는 것은 직접 두 자리 값을 두 배로 저장하는 것입니다! 그래서 내가 System.out.println("" + d)
과 같은 것을했을 때 (여기서 d는 값이 2 인 나의 double 임) 2.00을 출력합니다.
나는 이것을 할 방법이 없다고 생각하기 시작했습니다 ... 맞습니까? 어쨌든 귀하의 답변을 주셔서 다시 한번 감사드립니다. 솔루션을 알고 있다면 알려주십시오!
. 제시 될 때 서식이 지정된 방식 만 수정할 수 있습니다. –
예 ... 당신이 옳다고 생각합니다. 나는 사용자에게 보여줄 때마다 내 값을 형식화해야합니다 ... 많은 시간을! 답변 주셔서 감사합니다! – aveschini
글쎄, 포맷터 메소드를 한 번만 작성하면됩니다. 걱정하지 않아도됩니다. ;) –