String转换为double类型,棘手
小弟在做通过价格查询电影信息的WEB应用,可是通过request.getParameter()的字符串转换成double,用了Double.valueOf().doubleValue();和Double.parse(str)却总是报
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Double错误。
然而不采用服务器,直接用main方法测试 却成功无异常。纠结很久了,
望大师提点。。
[解决办法]
把你在web应用里面的代码贴出来看看,这个其实很容易的一件事
首先String str=request.getParameter("xxx")
然后double d=Double.parse(str);
怎么可能报类型转换错误
[解决办法]
贴完整的reqeust接受参数到转换的代码,如楼上所说这是个很简单容易的事
表示有压力jdk1.6不存在Double.parse()这个方法Double.valueOf("6.0")是可以正常使用的
[解决办法]
贴点代码出来呀、
Double.valueOf("6.0")是可以正常使用的
[解决办法]
那只能说明你request.getParameter()返回的字符串不是double类型
转换之前打印一下request.getParameter()的返回值看看是什么
[解决办法]
楼上的童鞋说的很对,出现类型转换异常只能说明request.getParameter() 方法返回的字符串不是double类型能转换的其中掺杂了别的字符。
[解决办法]