https://www.hdzikao.com

java中for input string:错误是怎么产生的?(InputMismatchException如何捕获异常?)【inputmismatchexception如何捕获异常】

[导读] 大家好,今天小热关注到一个比较有意思的话题,就是关于InputMismatchException的问题,于是小编就整理了2个相关介绍InputMismatchException的解答,让我们一起看看吧。 文章目录: java中for input str

java中for input string:错误是怎么产生的?(InputMismatchException如何捕获异常?)【inputmismatchexception如何捕获异常】

大家好,今天小热关注到一个比较有意思的话题,就是关于InputMismatchException的问题,于是小编就整理了2个相关介绍InputMismatchException的解答,让我们一起看看吧。

文章目录:

  1. java中for input string:错误是怎么产生的?
  2. InputMismatchException如何捕获异常?

一、java中for input string:错误是怎么产生的?

由于把不符合数字格式的字符串转换为数字时抛出的格式化异常。

“for input string:”错误的详细错误信息为“java.lang.NumberFormatException: For input string:”异常。解决方法是若是调试时异常,用debug或打印语句输出变量,将字符串纠正为数字格式。还可以用try catch语句捕获。

Java特点

如果你学习过C++语言,你会感觉Java很眼熟,因为Java中许多基本语句的语法和C++一样,像常用的循环语句、控制语句等和C++几乎一样,但不要误解为Java是C++的增强版,Java和C++是两种完全不同的语言,他们各有各的优势,且将会长期并存下去,Java语言和C++语言已成为软件开发者应当掌握的语言。

如果从语言的简单性方面看,Java要比C++简单,C++中许多容易混淆的概念,有的被Java弃之不用了,有的以一种更清楚、更容易理解的方式实现,例如,Java不再有指针的概念。

"For input string" 错误通常是在Java程序中使用了非数字字符串来解析为数字时发生的。

典型的情况就是使用Integer.parseInt()或Double.parseDouble()等方法将字符串转换为数字,如果字符串中含有非数字字符将会抛出异常。例如下图中的例子:


另一种情况就是使用Scanner.nextInt()或Scanner.nextDouble()等方法读入字符串后转换为数字,如果读入的字符串不是合法的数字格式将会抛出InputMismatchException

解决这个问题的方法有很多,可以使用try-catch语句来捕获异常,如果发生异常,提示用户重新输入。您也可以使用正则表达式来验证字符串是否为数字。

总之,在使用Integer.parseInt()、Double.parseDouble()、Scanner.nextInt()、Scanner.nextDouble()时,一定要保证传入的字符串是合法的数字格式。

详细解释可以查看官方文档:

二、InputMismatchException如何捕获异常?

只有jdk 7.0 之后switch才可以接受String类型的参数

到此,以上就是小编对于InputMismatchException的问题就介绍到这了,希望介绍关于InputMismatchException的2点解答对大家有用。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

相关文章阅读