Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Geeksforgeks上运行时,java.util.InputMismatchException在本地运行良好_Java - Fatal编程技术网

在Geeksforgeks上运行时,java.util.InputMismatchException在本地运行良好

在Geeksforgeks上运行时,java.util.InputMismatchException在本地运行良好,java,Java,尝试使用与预期模式或类型不匹配的文本扫描程序类检索令牌时,会引发InputMismatchException。请检查输入 Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Scanner.java:864) at java.util.Scanner.next(Scanner.java:1485) at java.util.Scanner.nex

尝试使用与预期模式或类型不匹配的文本扫描程序类检索令牌时,会引发
InputMismatchException
。请检查输入

Exception in thread "main" java.util.InputMismatchException
    at java.util.Scanner.throwFor(Scanner.java:864)
    at java.util.Scanner.next(Scanner.java:1485)
    at java.util.Scanner.nextInt(Scanner.java:2117)
    at java.util.Scanner.nextInt(Scanner.java:2076)
    at GFG.main(File.java:13)
试试上面的代码
next()
nextLine()
有区别。我不知道你的意见是什么,但试试看。
.

InputMismatchException
表示输入值与
next***
的类型不匹配。您输入的值我猜在引发此错误的情况下,当您为字符串唱歌时,会提供空字符串或仅包含空格的字符串。这将导致
next()
忽略它(因为空格是分隔符,该方法返回标记-由分隔符分隔的部分),并等待非分隔符字符。因为
next()
将为
nextInt()
消耗值,但是
nextInt()
调用将尝试为
nextFloat()
消耗值,这可能会导致异常。下面是@Pshemo的评论:最好将扫描程序代码包装在
try中。。。catch
,获取原始输入字符串,对其进行修剪,如果字符串为空,则抛出一个
InvalidArgumentException
。@这里的问题是
next()将不接受空字符串。
。若应用程序能够接受它,OP将需要使用
nextLine
。它还需要处理在中描述的问题,但这看起来是正确的方法。虽然这是正确的方向,但它将始终返回空字符串(至少在代码中没有其他机会的情况下)。看见
Exception in thread "main" java.util.InputMismatchException
    at java.util.Scanner.throwFor(Scanner.java:864)
    at java.util.Scanner.next(Scanner.java:1485)
    at java.util.Scanner.nextInt(Scanner.java:2117)
    at java.util.Scanner.nextInt(Scanner.java:2076)
    at GFG.main(File.java:13)
System.out.println("Enter a String value");
s=obj.nextLine();