반응형
안녕하세요
오늘도 자바 프로그래밍을 하는 중에 Float를 Int로 변환하는 중에 이런 에러가 떴습니다
Cannot cast from Float to int
이번 포스팅에서는 에러가 뜬 원인과 해결방법에 대해서 알아보겠습니다!
에러 원인
"Cannot cast from Float to int"를 해석하면
Float를 int로 캐스팅할 수 없다는 의미입니다
에러가 떴을 당시의 코드입니다
예전에는 float에서 int로 바로 변환이 되었는데 float에서 int로 변환하기 위해서는 실수를 정수로 처리하는 작업이 필요합니다
public class CastingSI3 {
public static void main(String[] args) {
// Float -> Int
Float f = 100.50f;
System.out.println("Float -> Int : " + ((int) f));
}
}
해결 방법
에러를 해결한 방법은 간단합니다
float에 Math메서드를 사용하여 반올림, 올림, 내림 처리를 해주면 됩니다
에러를 해결한 코드를 확인해보겠습니다
public class CastingSI3 {
public static void main(String[] args) {
// Float -> Int
Float f = 100.50f;
System.out.println("Float -> Int : " + ((int) Math.round(f)));
}
}
이렇게 에러를 해결했습니다
에러로 고생하는 개발자분들에게 제 글이 도움이 되었으면 좋겠습니다 ㅠ
감사합니다!
반응형
그리드형
'프로그래밍 > JAVA' 카테고리의 다른 글
[JAVA] Arrays.fill() 사용 방법(배열의 값 일괄초기화) (0) | 2021.05.16 |
---|---|
[JAVA] indexOf, lastIndexOf 사용 방법 (0) | 2021.05.16 |
[JAVA] 형 변환 방법(문자형 <-> 정수형 <-> 실수형) (0) | 2021.05.16 |
[JAVA] 오버로딩(Overloading)과 오버라이딩(Overriding)의 차이점 (0) | 2021.05.16 |
[JAVA/에러] No enclosing instance of type Overriding is accessible... 에러 해결 방법 (0) | 2021.05.16 |