您的位置首页百科知识

java.lang.NumberFormatException: For input string: " "这二个问题怎么解决

java.lang.NumberFormatException: For input string: " "这二个问题怎么解决

的有关信息介绍如下:

可以这样:Double.parseDouble(n.equals("")?"0":n);

注:n是你需要转换的字符串。

因为:java.lang.NumberFormatException: For input string: " "

这个异常是说,在将字符串转换为number的时候格式化错误。

“”空的字符串有对应的数值吗,这里显然没有,所以就一个问题,如上即可。

java.lang.NumberFormatException: For input string:

注意事项

如果传入的值不为null或“”可以正常运行不报错,如果为空值就会出现任如下异常。

by: java.lang.NumberFormatException: For input string: "null"

at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)

at java.lang.Integer.parseInt(Integer.java:580)

at java.lang.Integer.parseInt(Integer.java:615)

这里的

For input string: "null"

并不是指传入的值为空,而是指传入的字符串为“null”,而“null”并不能被StringUtils.split()切割,进而不能被Integer.parseInt()调用,所以会报错。

if(customerIdStr != null && !customerIdStr.equals("") ){

String[] customerIds = customerIdStr.split(",");

//将字符串客户ID 转换为整数ID

for (String idStr : customerIds) {

Integer id = Integer.parseInt(idStr);

customerRepository.updatefixedAreaId(fixedAreaId,id);

}

}else{

return;

}

所以只需要在上面的判断语句后面再加一个判断传入的参数是否不为“null”的条件即可解决此类异常问题。

if(customerIdStr != null && !customerIdStr.equals("") && !customerIdStr.equals("null")){

String[] customerIds = customerIdStr.split(",")