반응형
-java.lang.Integer cannot be cast to java.lang.String 해결방법을 알아본다.
1.에러 내용
캐스팅 대상이 Integer(int)인 경우 String으로 캐스팅할 때 (String)을 붙여 캐스팅하면 이 에러가 발생한다. 나는 프로젝트에서 map.get(값)으로 가져온 값이 int값인데 (String)map.get(값)으로 캐스팅하면서 발생했다. VO를 만들어 쓸 걸 그랬다.
2.해결 방법
String으로 캐스팅하려면 방법이 여러가지 있지만 보통 (String)으로 처리할 수 있다.
그러나 이건 캐스팅 대상이 문자열일 때 사용 가능하다. 캐스팅 대상이 실제로 Integer 타입이면 바로 (String)캐스팅시 저런 에러가 발생한다.
이럴 때 String.valueOf()를 사용한다.
//이러면 캐스팅 에러
int a = 0;
String b = (String)a;
//이렇게 사용
String b = String.valueOf(a);
반응형
'개발자 일지 > Java' 카테고리의 다른 글
[java] 동일성, 동등성 개념 및 equals, hashCode (0) | 2024.10.16 |
---|---|
[Java] Logback, SLF4J 기초, 사용 이유, 환경 설정 및 테스트 (0) | 2024.10.04 |
멀티쓰레드환경,동시성제어 | AtomicInteger 활용하기 (0) | 2023.10.14 |
[ibatis]SELECT 결과가 이상할 때(remapResults 사용하기) (1) | 2021.04.23 |
[디자인패턴]빌더 패턴(Builder Pattern) (0) | 2021.03.21 |
깊은 복사(Deep Copy)와 얕은 복사(Shallow Copy)의 이해 (0) | 2021.03.15 |
[디자인패턴]싱글톤 패턴(Singleton Pattern) (0) | 2021.03.08 |
[디자인패턴]팩토리 메소드 패턴(Factory Method Pattern) (0) | 2021.03.07 |