numberformatexception怎么解决
小编教你numberformatexception怎么解决
两个问题?java.lang.NumberFormatException: For input string: " "这个异常是说,在将字符串转换为number的时候格式化错误“”空的字符串有对应的数值吗,显然没有所以你可以Double.parseDouble(n.equals("")?"0":n);n是你需要转换的字符串
NumberFormatException异常什么情况下出现?
设置有问题,java.lang.NumberFormatException的意思是数字格式化异常,也就是要把"176//240"这个输入字条转换为一个数字无法转换.游戏应该有进行设置的地方,你将176//240改成一个纯数字就可以了.
通过这个异常,我猜测你是调用了类似如下的代码:String s = "xxxxx";int number = Integer.parseInt(s);只有在s里的字符串是整数类型,它才会转型成功,如果s是空值或者是非数字字符串,就会出现类型转换异常。
建议你在转型先增加如下判断并对异常进行捕获处理int number = 0 ;if(s != null && !s.trim().equals("")){try{int number = Integer.parseInt(s.trim());//trim方法的作用是去掉字符串前后的空格}catch(Exception e){number = 0;System.out.println("数字转换异常,信息:" + e.getMessage());}}
在捕获了异常并进行相应的处理,这样可以保证你当前的代码不影响后面程序的运行,加上输出信息,可以有效的定位错误原因并进行相应的处理。另外,在转型前对String进行非空判断也是非常有必要的。这些代码都是我手打的,可能会有字母错误,不过你在编辑器里稍微调整下就可以,大致的处理方法就是这样的。
版权声明:本站【趣百科】文章素材来源于网络或者用户投稿,未经许可不得用于商用,如转载保留本文链接:https://www.qubaik.com/answer/8582.html