文字列 "a23"から23を取得する必要があります。以下のプログラムを実行すると、以下のエラーが発生します。この場合には、整数 - ここ文字列を数値に変換する - NumberFormatException
public class GetIntFromString {
public static void main(String[] args) {
String str = "a23";
int i = Integer.parseInt(str);
System.out.println("Integer value= "+i);
System.out.println("value= "+str);
}
}
はparseXXX()メソッドは、要求されているタイプに忠実でない文字列を受け入れないスタックトレース
Exception in thread "main" java.lang.NumberFormatException: For Input String: "a23"
at java.lang.NumberFormatException.forInputString<NumberFormatException.java.48>
at java.lang.Integer.ParseInt<Integer.java.449>
at java.lang.Integer.ParseInt<Integer.java.499>
at GetIntFromString.main<GetIntFromString.java.9>
最初にいくつかの研究を行いますが、それは非常に簡単です。 Integer.parseIntは英数字文字列では機能しません。文字列から数字部分を抽出し、Integer.parseIntメソッドに渡す必要があります。 –