• 原因一:超出了int类型的取值范围

项目中要把十六进制字符串转化为十进制,

用到了到了Integer.parseInt(str1.trim(), 16);这个是不是后抛出java.lang.NumberFormatException异常,让老子看了半天!

后来发现是超出了int类型的取值范围,要用

BigInteger big = new BigInteger(str1.trim(),16);代替即可!!!

 

 

  • 原因二:字符串类型不对。

String numString = "1  ";

System.out.println(Integer.parseInt(numString));//字符串中有空格,不能转成Int类型。

解决办法很简单,改成 Integer.parseInt(numString.trim()) 就可以啦 

 

 

  • 原因三:转换值类型没有考虑值为空的状况或者由于进制不同:
 posted on 2019-01-21 19:43  做个快乐的自己  阅读(1539)  评论(0编辑  收藏  举报