Java中的hasNext()问题



我正在尝试编写一个程序,读取单词对并输出相同单词对的数量。假设输入的单词数是偶数。当我运行代码时,它没有输出任何东西。它似乎一直在运行。当我输入完单词后按Ctrl-Z时,它要么返回"0",要么什么都不返回。关于如何使我的程序正常运行的任何想法?谢谢。

编辑:它在命令提示符中运行良好,但在Eclipse中不能运行。

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int counter = 0;
        while (input.hasNext()) { 
            String string1, string2; 
            string1 = input.next();
            string2 = input.next();
            if (string1.equals(string2)) {
                ++counter;  
            }   
        }
        System.out.println(counter);
    }

您请求hasNext()一次,但随后调用next()两次。如果没有更多的元素,第二个next()可能会失效。

它在eclipse中对我来说真的不起作用(我也没有在netbeans中读到什么),要测试你的代码是否实际工作良好,你应该这样做:(在windows中)打开命令提示符(执行…"cmd"+回车)然后用

编译一个或多个类
javac YourClass.java

如果没有错误,它会让你输入一个没有消息的新命令,然后

java YourClass

那么你可以尝试在windows中使用Ctrl + z(在linux中使用Ctrl + d),它将打印^ z字符,然后按enter。

希望有帮助。

相关内容

  • 没有找到相关文章

最新更新