java - 如何修复运行时错误 - 线程 "main"java.util.NoSuchElementException 中的异常

标签 java

我在尝试运行我的程序时遇到以下错误。这实际上是针对 Hackerrank 的“第 6 天让我们回顾一下”挑战的提交内容。

Exception in thread "main" java.util.NoSuchElementException at java.util.Scanner.throwFor(Scanner.java:862) at java.util.Scanner.next(Scanner.java:1371) at Solution.main(Solution.java:10)

这是我的代码:

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int T = sc.nextInt();
    for(int i=0; i<=T; i++){
        String S = sc.next();

        for(int j=0; j<S.length(); j++){
            if(j%2==0){
                System.out.print(S.charAt(j));
            }
        }

        System.out.print(" ");

        for(int r=0; r<S.length(); r++){
            if(r%2!=0){
                System.out.print(S.charAt(r));
            }
        }
        System.out.println("");

    }
}

最佳答案

试试这个

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int T = sc.nextInt();
    for(int i=0; i<=T; i++){
        if(!sc.hasNext()) break;
        String S = sc.next();

        for(int j=0; j<S.length(); j++){
            if(j%2==0){
                System.out.print(S.charAt(j));
            }
        }

        System.out.print(" ");

        for(int r=0; r<S.length(); r++){
            if(r%2!=0){
                System.out.print(S.charAt(r));
            }
        }
        System.out.println("");

    }
}

当没有下一个元素时,抛出java.util.NoSuchElementException。为了避免这种情况,您应该使用 hasNext() 进行检查。

阅读此内容了解更多详细信息:https://www.tutorialspoint.com/java/util/scanner_hasnext.htm

关于java - 如何修复运行时错误 - 线程 "main"java.util.NoSuchElementException 中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55428579/

相关文章:

具有实现接口(interface)的多个枚举的 Java 泛型

java - 使用 Jackson 的 REST Web 服务 JSONObject 数据绑定(bind)

java - RSS/VSS 不断增长,直到机器上的所有内存和交换结束

java - 多线程代码对于很多工作人员来说太慢,但对于很少的工作人员来说速度很快

java - 如何确定 Java 字符串的子字符串是否与正则表达式匹配?

Java 正则表达式过于贪婪地捕获组

java - 我如何在java中读取多行文本,行与行之间有空格

java - 学hadoop有必要学java吗?

java - 我的场景属于原型(prototype)设计模式吗?

java - JAVA 中的日期和时间选择器