2013-01-17 57 views
-1
String initial_price = request.getParameter("initial_price"); 
    float initial_price_float = 0; 
    try { 
     initial_price_float = Float.parseFloat(initial_price); 
    } catch (NumberFormatException e) { 
       session.setAttribute("message", "Wrong input"); 
    } 

上面写的代码段给了我这个错误,但我确信我写了正确的数字。我该如何解决它?将字符串转换为浮点数时出错java

java.lang.NullPointerException 
sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1008) 
java.lang.Float.parseFloat(Float.java:452) 
servlet.AddProduct.doPost(AddProduct.java:114) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:647) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 
+1

输入是什么?确保你trim()它 –

+1

你正在得到'NullPointerException',因为它看起来像你的'initial_price'变量没有定义。你的请求对象是什么样的? – Kyle

+0

您是否尝试调试或在调用Float.parseFloat(initial_price)之前打印值'initial_price';? – agim

回答

2

没有传递null串入parseFloat

parseFloatdocumentation

@throws NullPointerException if the string is null 
相关问题