我搜索,我发现,但它都没有工作。我的问题是NumberFormatException
被抛出,而我想从String
投到double
。如何避免Java中的NumberFormatException?
字符串数组atomized包含很多字符串,我试图做出输出之前,使他们可见,所以我可以肯定有数据。唯一的问题是双重价值。它类似于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 2010-11-18 10:08:26
NumberFormatException – Andre 2010-11-18 10:11:58
darioo基本上是要求异常日志。 – 2010-11-18 10:16:34