2012-11-02 4 views
2

번호를 인쇄 할 때 서식을 지정하려고합니다. 나는 것은이Java에서 인쇄하기위한 번호 서식 지정

-01 
05 

를 출력한다

private static DecimalFormat formatter = new DecimalFormat("#00"); 

를 사용하고 나는 그것이

-1 
05 

또는

-01 
05 

를 인쇄하고 싶은 일을하는 방법이 있나요 if 문을 사용하지 않고?

+3

-01 05를 인쇄하지만 -01 05를 인쇄 하시겠습니까? –

+0

입력 내용은 무엇입니까? – Keppil

+0

@JBNizet은 OP –

답변

4

글쎄, 분명히 두 개의 형식을 제공 할 수 있습니다. 하나는 음수이고 다른 하나는 음수입니다. 당신은 그것보다 더 많은 일을 할 경우에 DecimalFormat를 요구하고있다

DecimalFormat formatter = new DecimalFormat("#00;#0"); 
0

See here

그래서 당신은 사용해야합니다. 의 형식이 인 경우에만 해당 번호를 문자열으로 서식을 지정하려면 "문자열"Formatter (javadoc here)과 결합해야합니다. 문자열 포맷이 넓은 세 문자로 모든 문자열을 맞추고

Formatter formatter = new Formatter(System.out); 
DecimalFormat numFormatter = new DecimalFormat("#00"); 
formatter.format("%3s\n", numFormatter.format(-3)); 
formatter.format("%3s\n", numFormatter.format(11)); 
formatter.format("%3s\n", numFormatter.format(2)); 

출력

-03 
11 
02 

참고. 3 자보다 큰 값을 입력하면 [너비]가 3을 초과합니다 (원하는 값).