私は検索しましたが、見つかりましたが、すべてうまくいきませんでした。私の問題は、String
からdouble
にキャストしたいときにNumberFormatException
がスローされるということです。JavaでNumberFormatExceptionを回避するにはどうすればよいですか?
文字列配列には多くの文字列が含まれています。データを確実に表示できるように、それらを表示する前に出力を作成しようとしました。唯一の問題は二重値です。 5837848.3748980のようなものですが、valueOfメソッドは常にここで例外をスローします。なぜ私は考えていない。
try
{
int key = Integer.valueOf(atomized[0]);
double value = Double.valueOf(atomized[1].trim());
int role = Integer.valueOf(atomized[2]);
Double newAccountState = this.bankKonto.charge(key, value, role);
System.out.println("NEW Account State "+newAccountState);
this.answerClient(newAccountState.toString());
}
catch (NumberFormatException e)
{
System.out.println(e.getClass().toString()+" "+e.getMessage());
}
例外出力:
java.lang.NumberFormatException: For input string: "109037.0"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.valueOf(Unknown Source)
at vsys.ue02.server.Bank.computeData(Bank.java:122)
at vsys.ue02.server.Bank.run(Bank.java:160)
例外とは何ですか? – darioo
NumberFormatException – Andre
dariooは基本的に例外ログを要求しています。 –