【Java】objectからintには変換できませんへの対処方法
この記事ではJavaでobjectからintには変換できませんとなった場合の対処方法を解説します。
型の不一致: Object から int には変換できません
「型の不一致: Object から int には変換できません 」は以下のようなコードを書いた際にエラーとなります。
Object obj = "123456"; int i = obj;
Object型はすべてのクラスが共通して継承しているルートクラスです。(言い換えると祖先見たいなものです。intからObjectに変換は可能ですが、Objectからintには直接的には変換できません。)
Object型から int型への変換は、直接的にはできません。Object 型を int 型に変換するには、Integer.parseIntメソッドを使用して、Object 型を String 型に変換し、その後 int 型に変換します。
Object obj = "123456"; int i = Integer.parseInt(String.valueOf(obj)); System.out.println(i + 1); // 実行結果 123457
★補足:Integer.parseInt() メソッド
Integer.parseInt() メソッドは、Java の Integer クラスに属する静的メソッドです。このメソッドは、数値の文字列を int型に変換します。計算やその他の操作で数値の文字列を整数に変換する際に使用します。
String sample = "3"; int result = Integer.parseInt(sample); // 数値に変換されているので、3+1=4 System.out.println(result + 1); // 文字列のままなので31 System.out.println(sample + 1); // 実行結果 4 31
Javaの記事の一覧はJava にまとめてあります