2016-10-30 2 views
-1

안녕하세요 여러분 java에서 목록의 목록을 사용하고 있습니다. 목록은 deg_grp이고 아래 코드는 특정 색인 j에서 deg_grp의 출력을 보여줍니다.Java float to int 변환 오류

for(int k=0;k<deg_grp.get(j).size();k++) 
{ 
    System.out.println(deg_grp.get(j).get(k)); 
} 

출력은 다음과 같습니다

1.0 
2.0 
4.0 
6.0 
8.0 

그래서이 내 값입니다. 나는 그것은 나를 던지고

System.out.println((int)deg_grp.get(j).get(k)); 

하여 인쇄 명령을 교체 할 때 있지만 error.I 인덱싱 목적을 위해 INT 변환을 수행 할 필요가 나중에 갑시다 오류는 다음과 같습니다

호환되지 않는 유형 : 플로트가 될 수 없다 int로 변환

그래서 코드를 실행할 수 없습니다. 친절하게 도와주세요. 고마워요 :)

답변

0

유형을 한 번에 해제하고 변환 할 수 없습니다. (int)(float) f 할 수 있지만 플로트를 사용하지 말고 더 정밀도를 높이기 위해 double 또는 Double을 사용하고 Math.round(d)을 사용하여 결과를 반올림하여 오류를 최소화하십시오.

System.out.println(Math.round(deg_grp.get(j).get(k)));