问题标签 [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 投票
3 回答
641 浏览

java - LOOP 中的 InputMismatchException

我试图为我的问题找到解决方案,但找不到在实践中有效的解决方案。所以,如果你不确定你知道解决方案是什么,请不要回答。我真的需要具体的帮助。

问题是当我运行我的简单代码时 - 你可以选择一个数字,没关系,循环工作正常。当您选择 0 时,它也可以工作(运行完成),但是当您输入一个字母或任何字符串时 - 有一个问题......即使我尝试输入另一个值,异常也会不停地循环。

PS。我需要在这里使用扫描仪,所以请不要写读者等 - 只是如何解决这个特定问题。

干杯,

这是代码(仅主要):

0 投票
1 回答
25530 浏览

java - Java:Do-While 循环中的 Try-Catch 语句

我正在尝试执行一些扫描用户输入值的代码。此操作包含在我编写的自定义方法中,名为 getTriangleDim(); 该方法读取用户的 int 值,确保它在一定范围内,然后返回输入的 int 值。该方法效果很好,我对此没有任何问题。

当我为我的 getTriangleDim() 方法输入一个非整数值时,就会出现问题。它给了我一个 InputMismatchException 错误。我已将 try-catch 语句写入 do-while 循环以尝试解决此问题。但这是我第一次使用 try-catch 语句,我显然遗漏了一些东西。

下面是嵌套在 do-while 循环中的 try-catch 语句的代码:

如果我通过输入一个 char 值代替 int 来测试它,它实际上会捕获一次错误,然后打印我的“你没有......”语句。但是,如果我重新输入另一个非整数数字,我会再次收到运行时错误,提示......你猜对了...... InputMismatchException 错误。

我的方法的代码在这里:

我需要 Do-While 循环才能继续,但我不断收到这些错误。

0 投票
1 回答
1490 浏览

java - Java文件输入和数据操作到文件输出

嘿,所以目标是开发一个程序,该程序从文本文件中读取运动数据并将该数据的摘要打印到另一个文本文件中。输入文件由来自 txt 文件的几个记录示例输入组成,如下所示:

我的问题是我无法让我的代码阅读每个人我只能让它阅读第一个或让我进入无限循环或输入不匹配。这是我的代码:

输出记录是输入记录的摘要。它由四个 TAB 分隔值组成:该参与者的数据天数、锻炼的总分钟数、每天平均锻炼的分钟数和总体重减轻(如果参与者体重增加,则为负数) . 该名称已被读入,但没有再次打印出来(我们正在匿名化数据)。对于上面的记录,受试者的名字是 Joe Schmoe,他的起始体重是 76.5 公斤。Joe 锻炼了四天(起始体重和最终体重之间有四个 int 值),总共 85 分钟(20 + 30 + 25 + 10 = 85)。他的最终体重是75.9公斤。输出记录为:4 85 21.25 0.5999999999999943

我已经绞尽脑汁两周了,任何帮助将不胜感激,谢谢

0 投票
5 回答
115 浏览

java - Looping do...while uncertainty

In the catch block, I'm trying to correct for user bad-input issues. When testing it, if I use the "break" keyword, it doesn't jump to the initial question. If I use "continue", it loops infinitely. "Sc.next();" doesn't seem to resolve it either.

Here's the relevant part of the code.

0 投票
2 回答
172 浏览

java - 如何确保没有将字符串值传递给 int 变量?

我对编程还是很陌生。我只上过三门编程课,一门 C++,两门 Java。

我决定要建造自己版本的战舰。我或多或少地完成了整个项目。我的问题一直是提供用户验证方法,以确保用户实际上输入了有效信息。

我在嵌套的 do-while 循环中有大量代码,如果特定条件返回 false,每个循环都会重复。

我创建了一个代表游戏板的 Board 类。这是减去方法的代码。

这是整个 placeBoats() 方法

这是我的 placeBoats() 方法。Player 类有一个静态变量,用于表示创建的 Player 对象的总数,每个对象都有自己唯一的玩家编号。

当我在驱动程序类中运行程序时,一切似乎都运行良好,除非在线路中......

.... 用户输入一个字符串。在这种情况下,编译器会抛出 InputMismatchException。

明白为什么会出现此错误,但如何防止用户输入字符串?我认为我在用户输入行之后的两个 while() 语句会解决这个问题,但是如果给定一个字符串,它仍然会抛出一个异常......

有想法该怎么解决这个吗?顺便说一句,这是我在这里的第一篇文章,如果我发布了太多代码,请见谅。我想我会更具体而不是模糊。

编辑:谢谢 CB、ccjmne 和 ryvantage,以及所有回复的人。您的所有意见使我得到了最终解决方案,我将在下面展示。如果有更好的方法,请告诉我。

0 投票
3 回答
320 浏览

java - 为什么我收到输入无效的无限循环?

当初始选择无效时,为什么这会导致我陷入无限循环?

输出:

0 投票
1 回答
4216 浏览

java - 线程“主”java.util.InputMismatchException“温度程序”中的异常

有人可以帮忙吗?我可以让它运行,但是在输出消息“外部温度是多少:”“这里的数字”之后

类型 (C) 代表摄氏温度或 (F) 代表华氏温度:

一旦我输入 C 或 F,它就会给我这个错误信息

线程“主”java.util.InputMismatchException 中的异常

请帮忙

0 投票
2 回答
1188 浏览

java - 从文件读取时输入不匹配

我有一个文件,其中的数据组织如下:

Hyundai Santa Fe

2005 16999 8

Mercury Mountaineer AWD

2004 17999 7.5

Mercury Grand Marquis

2006 19999 12.5

第一行是汽车名称,下一行是年份、价格和折扣金额。我正在尝试读取包含许多这些行的文件,并且令人惊讶的是价格和折扣并不总是表示为双倍。

这是我编写的一段代码,但没有正确解析这些代码。我收到输入不匹配异常。

我究竟做错了什么?

0 投票
2 回答
234 浏览

java - Java - 如何用其他东西替换“java.util.InputMismatchException”错误

如何使它不显示“java.util.InputMismatchException”?

例如:

当你输入一个有效的 int 时它工作正常,比如“5”,但是当用户输入一个无效的 int 时,比如“5.1”或“a”,它会在线程“main”java.util.InputMismatchException 中给出错误异常. 如果用户输入无效的 int,有没有办法绕过错误并显示/执行其他操作?

像这样:

0 投票
2 回答
135 浏览

java - 使用输入扫描器时的 InputMismatchException

我正在编写一个读取各种类型数据文件的程序。我正在尝试将文件中的数据传递给我创建的各种数组。

文件中的示例部分(双倍行距。类别之间的空格是制表符,但名字/姓氏和国家/地区之间的空格是空格)

然而,当我的代码编译时,我得到了 InputMismatchException。我想知道它是否处理在每一行的末尾没有随后出现的选项卡的事实。谁能帮我解决这个问题?