Java ClassCastException: java.lang.Long cannot be cast to java.lang.Integer」の対処方法

環境
Java SE 1.8

エラー現象
java.lang.Long cannot be cast to java.lang.Integer」

ソースコード

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
int result = cft.get("item");
int result = cft.get("item");
int result = cft.get("item");

原因分析

resultはint型で、cft.get(“item")はlong型なのでコンパイルできない
解決方法
一度「cft.get(“item")」をString型に変換して、そのあとにint型にします。
修正後

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
int result = Integer.parseInt(cft.get("item").toString());
int result = Integer.parseInt(cft.get("item").toString());
int result = Integer.parseInt(cft.get("item").toString());

 

Java

Posted by arkgame