繁体   English   中英

在 Java 中初始化变量(读取文件并存储在 ArrayList/HashMap 中)一次

[英]Initialize variable (Read out of file and store in ArrayList/HashMap) once in Java

我有一个程序可以反复读取文件。 我只想初始化一次,然后使用 arraylist/HashMAP。

public boolean negative(String text, String type) throws FileNotFoundException
{
     ArrayList<String> negative_list = new ArrayList<String>();
     Scanner scan = new Scanner(new File("NegatingWordList.txt"));
     while (scan.hasNextLine())
     {
           negative_list.add(scan.nextLine());
     }
     if(negative_list.contains(text))
     {
         return true;
     }

    return false;
}

所以,在初始化negative_list 之后,我不需要再这样做了。

据我了解,您的问题是您想将文件内容保存在内存中。 在这种情况下,全局存储您的列表,在您的程序启动时初始化为新列表,在您的negative方法中,如果列表为空,则从文件读入列表,然后检查列表是否包含文本。 所以在它填满列表一次后,它不会再次从文件中读取。 如果您的文件不为空,这将起作用。 如果为空,则每次都会读取。 这个实现很简单,因此,为了实践,你应该自己实现它,而不是任何人提供它。 无论如何,您已经完成了大部分工作。

您可以将negative_list声明为全局变量,如下所示:-

ArrayList<String> negative_list =null;

& 内部函数使用 if 条件如下:-

if(negative_list == null){
negative_list = new ArrayList<String>();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM