2014-12-05 2 views
0

반올림 :은의 NumberFormat와 기본 로케일 구분을 사용하고 나는이 자바 코드가 수

NumberFormat nf = NumberFormat.getNumberInstance(Locale.getDefault()); 
    DecimalFormat df = (DecimalFormat)nf; 
    newCurr = df.format(dCurr); 

는 기본적으로, 숫자 전달을 12.344을 말한다.

두 곳을 반올림하고 Locale의 기본 구분 기호 ("."또는 ",")를 사용하고 싶습니다. 예를 들어 유럽의 일부 국가의 경우 12,34

위의 코드를 사용하여 지금까지 중도에 있습니다. 나는 12,344를 얻는다. 둥근 수 있도록 DecimalFormat of ("#. ##")을 어디에 둘 수 없습니까?

다른 말로하면 DecimalFormat df=new DecimalFormat("#.##");을 위와 같이 사용할 수 있습니까? 아니면 다른 방법을 찾아야합니까?

편집 : 나는 (100.00 * var)/100.00의 오래된 방법을 수행해야한다고 생각하고 있습니까?

답변

1

메소드 setMaximumFractionDigit이 작업을 수행합니다. 사용할 수있는 나머지 메서드를 확인하십시오 : http://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html#setMaximumFractionDigits%28int%29

+0

나는'setMinimumFractionDigits'의 조합으로 내가 필요한 것을 할 것이라고 생각합니다. 왜냐하면 .00으로 끝나는 정수를 원하기 때문입니다. 편집 : 그것은 일했다! 올바른 표시 – KickingLettuce