Java 为什么以下程序在没有错误的情况下终止

Java 为什么以下程序在没有错误的情况下终止,java,Java,为什么下面的程序终止而不产生任何东西?MyData.txt文件保存在同一目录中 import java.util.Scanner; import java.io.*; public class MyIO { public static void main (String[] args) throws IOException { int num, square; Scanner scan = new Scanner( "MyData.t

为什么下面的程序终止而不产生任何东西?MyData.txt文件保存在同一目录中

import java.util.Scanner;
import java.io.*;

public class  MyIO
{
    public static void main (String[] args)  throws IOException 
    {  
        int num, square; 
        Scanner scan = new Scanner( "MyData.txt");      // connect a Scanner to the file

        try{    
            while(scan.hasNextInt())   // is there more data to process? 
            {
                num = scan.nextInt();
                square = num*num ;      
                System.out.println("The square of " + num + " is " + square);
            }
        } finally{
            scan.close();
        }
    }
}

您是否只需要MyData.txt文件中的整数?如果文件的第一个值不是整数,则不会进入while循环。 您可能跳过了代码中的一行或其他内容。我们能看看你的MyData.txt文件吗?(或至少是一个例子)


此外,如果您想进行一些清理,则不需要在循环外部声明字段“num”和“square”,除非您计划以后重用它们。

并且
“MyData.txt”
的内容是什么?还有,为什么您希望出现错误?您可能从未进入while循环,因为scan.hasNextInt()返回false这是MyData的内容。txt1 2 3 10 11 12 13 23 45 67我不希望出现错误,我只是不希望程序在没有给出正确输出的情况下终止。