错误:无法找到符号 - 使用文件扫描程序循环

时间:2017-06-04 07:31:43

标签: java file input

这个错误是什么意思?在try catch块下面的代码的每一行上都会发生此错误。我很困惑为什么这个错误不断出现。

我的进口商品:

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

我的方法:

public static void readLists(ArrayList <String> list1, ArrayList <String> list2)


      {
 Scanner list1s;
Scanner list2s;

      try
      {
        list1s = new Scanner(new File("list1.txt"));
        list2s = new Scanner(new File ("list2.txt"));
      }
      catch(FileNotFoundException ex)
      {
        System.out.println("File not found!\n");
      }

      while(list1s.hasNext())
        list1.add(list1s.next());

      while(list2s.hasNext())
        list2.add(list2s.next());

      list1s.close();
      list2s.close();

    }

更新的代码来自评论中的建议。但是,我收到以下错误:变量list1s可能尚未初始化       而(list1s.hasNext())

如果我在try / catch中没有扫描器声明和初始化。知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

static Scanner list1s;
static  Scanner list2s;
public static void readLists(ArrayList <String> list1, ArrayList <String> list2)

{

    try
    {
        list1s = new Scanner(new File("list1.txt"));
        list2s = new Scanner(new File ("list2.txt"));
    }
    catch(FileNotFoundException ex)
    {
        System.out.println("File not found!\n");
    }
// Your code
}

仅供参考:声明时的类和实例变量会自动赋予其默认值。