问题标签 [inputmismatchexception]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
4935 浏览

java - InputMismatchException 字符串输入到整数字段

我在将非整数输入整数字段时遇到问题。我只是采取预防措施,以便如果其他人使用/在我的程序上工作,他们不会得到这个InputMismatchException

当我在变量中输入非数字字符时input,出现上述错误。有什么方法可以弥补这一点,就像NullPointerException在字符串方面可以做的那样?

编辑此代码只是为了包含导致问题的相关部分。

0 投票
7 回答
26457 浏览

java - Java,使用 Scanner 尝试捕获

我正在创建一个小算法,这是其中的一部分。

如果用户输入非整数值,我想输出一条消息,让用户再次输入一个数字:

我得到了一个永无止境的循环,我不知道为什么。

如何识别用户是否输入了一些非整数?
如果用户输入了一个非整数,如何让用户重新输入?

更新
当我打印异常时,我得到“InputMismatchException”,我该怎么办?

0 投票
2 回答
496 浏览

java - 当 Scanner.nextLong() 从 try 块中抛出 InputMismatchException 时, Scanner.next() 如何在 catch 块中获得相同的值?

当我在java中运行以下代码时:

}

并将输入输入为“23333333333333333333333333333333333333333”,它给出以下输出:

23333333333333333333333333333333333333333 can't be fitted anywhere.

sc.nextLong()抛出时,catch 块中的InputMismatchException如何获得与try 块中sc.next()输入的完全相同的值?sc.nextLong()它不应该在这里要求控制台输入代码的输入吗?

0 投票
2 回答
396 浏览

java - 扫描程序抛出 InputMismatchException 与 null

我运行这个代码块我插入第一个输入,但它为每个输入显示 null 然后它崩溃可能有人运行它并告诉他是否有同样的问题我使用 BlueJ 编译器

0 投票
5 回答
733 浏览

java - 为什么这个 do while 循环无限运行?

尝试编写一个程序,让用户输入他们一周的开支。问题在于我希望程序重新询问用户是否输入了不可接受的输入。我想出了如何检测负值,但是当试图捕获输入不匹配异常时(如果输入了一个字符或字符串),循环只是无限运行,询问“星期一费用:”我如何做到这一点,以便给用户另一个回答的机会?我试着休息一下;但这也打破了 do while 循环,这是我不想要的。

到目前为止,这是我的代码:

谢谢你的帮助

0 投票
2 回答
672 浏览

java - 输入不匹配错误

所以,我在这里有这个小程序,我一直收到输入不匹配错误。我将在代码下方发布错误消息。老实说,我有 0 线索为什么会出现错误。我已经检查了所有必需的变量是否都分配了正确的类型。如果我理解正确,当您尝试输入意外的内容时会发生上述错误,对吗?( double 而不是 int 或其他)。我可能在某个地方犯了一些愚蠢的错误,由于某种原因我看不到,所以我很感激你的帮助。

所以,这就是我的 main() 方法的内容。错误出现在以下行:placilo = sc.nextInt()。这是上述错误的副本:

我输入的输入基本上是一行单独的整数,例如:1 1 1 1 2 1... 等等。我有不同的例子,所有这些都是不同长度的整数行。

切里奥,乔治

0 投票
1 回答
1237 浏览

java - Java扫描仪分隔符错误csv java行尾

我在InputMismatchExceptioncsv 的最后一个 int 中收到了一段时间的扫描。

文件内容:

51300051409,fbc,273,297
51300073658,cef,250,262

输出:

使用文件:
/Users/andrewkeithly/netbeansprojects/Trades Exercise/input.csv

51300051409,fbc,273,297
时间戳:51300051409
符号: fbc
数量:273
遇到错误读取文件:
java.util.InputMismatchException

0 投票
3 回答
460 浏览

java - Java InputMismatchException 未知来源

我无法找到错误的根源。我所做的就是从文件中读取文本

并且错误消息显示 InputMismatchException:

question3.txt的内容如下(3行,无空格):

我搜索了其他解决 InputMismatchException 的问题,但大多数都有“错误格式”的错误(试图将整数读取为字符串,反之亦然)。但就我而言,它应该没有问题,因为文件内容都是整数。

我还认为错误可能与'换行符(\ n)'有关。所以试过

反之亦然

两者仍然在同一行上给出相同的错误。

似乎是一个简单的问题,但我就是找不到。提前致谢。


问题已解决:我将编码更改为 Cp1252,它读取的是 2。谢谢大家

0 投票
1 回答
95 浏览

java - InputMismatch 异常读取布尔值

我有一个包含一些值的文件:

我需要将这些值读入 2D ArrayList。前两个值(11 和 8)分别是行数和列数。所以这里是代码:

问题是 - 程序成功读取了前两个数字,当涉及到布尔值时,它会在线抛出 InputMismatch 异常

所以我无法理解为什么。0接下来应该阅读它,它是布尔值 - 那么实际上不匹配的是什么?

我还指出,如果将buffertype 更改为 integer 然后 assign scanner.nextInt(),程序将正确读取所有值,因此在输出中我会看到所有这些值。所以当然,我可以更改ArrayList 为 Integer 来完成这项工作,但它在语义上是错误的,因为它只包含布尔值。谁能帮我找出问题所在?

0 投票
0 回答
345 浏览

java - 在这种情况下,为什么我的扫描仪会抛出 InputMismatchException?

我对编程很陌生,对于我需要在坐标中扫描的任务。输入如下:

5,4 4,5 8,7=6,3 3,2 9,6 4,3=7,6=9,8=5,5 7,8 6,5 6,4

我目前正在尝试让我的扫描仪工作。我使用了两个 while 循环和三个定界符,它们是“=”、“”和“,”。这是我在最后一个循环中得到的:

它将打印出以下内容:

如您所见,它确实读取了除最后一个之外的所有坐标。有人知道我要做什么并且可以告诉我为什么吗?

更新 09-11-2015 22:36 :

回复@它不止一种方法,但如果我把它放在一种方法中,它会看起来像这样