问题描述:
java.lang.NumberFormatException: null
问题分析:
1、使用Integer.parseInt()、Integer.valueOf()、Long.parseLong()、Long.valueOf()等方法将字符串转换成对应的基本类型时,传参为null,导致报错。
String str = null;
Integer.parseInt(str);
Integer.valueOf(str);
Long.parseLong(str);
Long.valueOf(str);
解决办法:
在使用Integer.parseInt()、Integer.valueOf()、Long.parseLong()、Long.valueOf()等方法之前,先用StrUtil.isNotEmpty()判断传参是否为null或空字符。
String str = null;
Integer num1 = StrUtil.isNotEmpty(str) ? Integer.parseInt(str) : null;
Integer num2 = StrUtil.isNotEmpty(str) ? Integer.valueOf(str) : null;
Long num3 = StrUtil.isNotEmpty(str) ? Long.parseLong(str) : null;
Long num4 = StrUtil.isNotEmpty(str) ? Long.valueOf(str) : null;
注: