2014-09-14 4 views
0

나는 안드로이드 및 자바 프로그래밍에 익숙하지 않으므로 쉬운 질문입니다. 내 문제는 10 진수 값의 끝에 %를 추가하는 것입니다. double 값을 얻고 소수점 이하 자릿수를 알 수 없으므로 소수점 이하 두 자리로 변환해야하고 마침내 마지막 위치에 %를 추가해야합니다. 문제는 double 값을 한 번만 포맷합니다. 이 DecimalFormat ("#. ## %")처럼 시도했지만 소수점은 두 자리 앞으로 이동했습니다. 이 문제에서 벗어나도록 도와주세요. (". # ## %")에 DecimalFormat를 사용Java에서 문자열로 10 진수 값 형식 지정

,

실제 : 34.142545가

출력 : 형식 %를 추가하여 3414.25 %

+0

http://developer.android.com/reference/java/text/DecimalFormat.html – Simon

답변

1

, 그것은 당신이 값을 변환 할 것을 의미합니다 백분율이지만, 백분율 세계에서 값 1100%과 같음을 기억해야합니다. 사용하는 값에 자동으로 100을 곱합니다.이 문제를 피하려면 %을 리터럴 아포스트로피

new DecimalFormat("#.##'%'"); 
+0

이 내가 필요한 것입니다 '%' 그것을 인용하여, 대단히 @Pshemo 감사합니다. – Prabakaran

+0

@ Lietx 당신은 환영합니다 :) – Pshemo

1

, 100에 의해 번성하여 추가 % 캐릭터. 이것이 소수점이 움직이는 것처럼 보이는 이유입니다. 포맷하기 전에

String output = new DecimalFormat("#.##").format(input) + "%"; 
대안 (100)에 의해 분할하는 것입니다

:

당신은 같은 것을 사용할 수 있습니다 당신은 형식 % 사용하는 경우

String output = new DecimalFormat("#.##%").format(input/100.0);