Java 의 경우 정수, 배, I want to 변환하시겠습니까 그러니까말이야 이:
double x = 1.5;
int y = (int)x;
확보하십시오 y = 1. 이 경우:
int y = (int)Math.round(x);
(yes, I do it 및 짓궂군요 다음과 같은 저기 모든 값을 x, 여기서 y 는 x 는 깎은 것으로 보여 결과가 아닌 라운드된 나타내줍니다?)
그렇다면: Int 는 더 나은 방법이 있을 수 없는 위험을 실행 연산뿐 라운드된 붙여넣습니다 절단?
뭔가 생각. 마스트로런드 (x) 가 아닌 한, 두 번. 업그레이드됨: () 등 여러 3.9999998 보았으매 반환되기를 마스트로런드 것은 불가능하다. 이에 따라 int (마스트로런드 ()) 은 배반자들의 잘라냅니다 아무 것도 할 것이며 항상 작동합니까.
>. 더블 캐스팅 있을 가능성도 있다고 계속 발생할 수 아래로 잘린 마스트로런드 () '을 통해 만든'
아니, '차 ()' 가 항상 올바른 가치, 그런 다음 라운드 너회의 더블 캐스팅 될 수 있는 모든 충족되었으며 '긴' 잘라냅니다 소수점. 하지만 그 나머지 모든 분수 부품 둥글리기 않습니다.
다음은 docs 에서 ['마스트로런드 (실수)'] [1]:
>. 가장 오래 되돌려줍니다 논증. 그 결과 라운드됩니다 정수 추가하기만 입력할 수 있으며, 그 결과, 캐스팅 바닥에 1/2 정도이다. 즉, 그 결과 값을 표현식에서는 같습니다.
>. (긴) 마테오프루어 (a + 0.5d)
[1]: http://download.oracle.com/javase/6/docs/api/java/lang/Math.html # 라운드 (실수)
Double perValue = 96.57;
int roundVal= (int) Math.round(perValue);
내 것이 목적.