2010-03-27 4 views
0

로 변환하는 몇 가지 작은 기본 문제 : 내가 가지고있는 포맷 및 자바

방법 포맷하기 :

""00000456" 

:

int i = 456; 

출력을 제공하기 위해? 나는 % 08d를 시도했지만 작동하지 않습니다. 다음 것은 변환 및 형식화에 문제가 있습니다. 저는 삼각형의 옆과 높이를 가졌습니다. int의 4,7을 가정 해 봅시다. 그리고 7이 높이입니다. 우리가 알고있는 분야의 공식으로부터 F = 1/2 (a * h)를 알 수 있습니다. 그렇다면 F를 10 자리까지 정밀도로 플로트 (float)로 가져 오는 방법은 무엇입니까?

float f = a*h; 

가 잘 작동하지만 0.5을 곱하면 오류를 제공하고 1/2 반환

+1

두 개의 게시물을 결합하는 대신 두 가지 질문을해야합니다. – TofuBeer

답변

0

답변은 String.format을 사용했습니다.

String fs = String.format("%08d", this.id); 
    return fs; 
0

0으로 포맷하는 방법 :

INT의 전 = 456;

"00000456"

System.out.printf이 ("% 08D"내가) 작업을 수행 할 수 있습니다 출력을 제공합니다.

0

1/2 정수 표현입니다 Formatter 클래스 또는 및 String.format를 참조 자동으로 float로 변환되지 않습니다. 1.0f/2.0f, 1.0f/2, 1/2.0f, (float) 1/(float) 2, (float) 1/2, 1/(float) 중 하나 여야합니다. 2, 플로트 변수/플로트 변수, 부동 변수/INT 변수, INT 변수/플로트 변수 ... 당신은

0

는 둘째 대신 0.5f 곱 시도 대신 %08d%.08d이어야한다 아이디어를 얻을 .

관련 문제