gpt4 book ai didi

java - 另一个带有简单程序的 java.util.NoSuchElementException

转载 作者:行者123 更新时间:2023-12-02 11:29:09 25 4
gpt4 key购买 nike

我仍在学习如何使用 java 进行编码,并且遇到了我无法解决的问题。

编译器说:

Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:862)
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 GetInputData.main(GetInputData.java:10)

这是代码

import java.util.Scanner;

public class GetInputData
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int tag;
System.out.println("Enter an integer: ");
tag = in.nextInt();
System.out.println("Input Integer is: "+tag);
}
}

一直在寻找解决方案,但看起来很多人都有这种问题,所以如果你们中的任何人有其他解决方法,请分享给我,我只想要一个简单的程序,可以从我们输入的任何内容中读取,谢谢。

最佳答案

这是 JDK 中 Scanner 类的方法 throwFor,它表明如果 (a) 输入资源关闭,它将抛出 NoSuchElementException或 (b) 您正在输入缓冲区无法容纳的输入。

从您的代码来看,您似乎没有关闭扫描仪(您应该在最后关闭)。因此,唯一的可能性是您输入的内容无效。

顺便说一句,这不是编译器错误,而是运行时异常。

859     private void throwFor() {
860 skipped = false;
861 if ((sourceClosed) && (position == buf.limit()))
862 throw new NoSuchElementException();
863 else
864 throw new InputMismatchException();
865 }

关于java - 另一个带有简单程序的 java.util.NoSuchElementException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49411170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com