扫描仪引发异常并打印出来

时间:2015-11-11 20:58:39

标签: java

因此需要一个读取包含4个整数(1,2,3,4)的txt文件并抛出异常的方法。我认为我的扫描仪正确...但我想打印扫描仪在我的主要方法中读取的值。我不知道如何使用System.out.println()来做到这一点。扫描仪不在主要方法中。 这是我的代码:

public static void scan()
{     
    String fileInputName  = "data.txt";
    Scanner sc = null;  

    try {
        sc = new Scanner(new BufferedReader(new FileReader(fileInputName)));
        while (sc.hasNextLine()) 
        {                     
            sc.nextInt();
        }
    }
    catch (FileNotFoundException e) 
        {
            e.printStackTrace();
        }
    finally
    {
        if (sc != null)
            sc.close();  
    }           
}

2 个答案:

答案 0 :(得分:0)

您必须将扫描分配给变量,然后将其打印出来:

更改方法的界面

public List<Integer> void scan()

然后声明一个列表:

List<Integer> list = new ArrayList<Integer>();

while (sc.hasNextLine()) 
    {
        int myInt = sc.nextInt();
        list.add(myInt);
    }

然后返回:

return list;

然后在您的主要内容中,遍历您的列表并打印出来:

list = scan();

for (Integer i : list){
    System.out.println(i);
}

答案 1 :(得分:0)

您可以将int指定为变量,然后像这样打印变量:

System.out.println(variableInt);

或者您可以在访问时打印它:

System.out.println(sc.nextInt());

另外,要知道println在打印完东西之后会移动一个新行。如果您想避免这种情况,只需将其更改为:

System.out.print(whatever);