我编写了一个 java 类,它读取文件并将每一行存储在数组列表中。我想多次访问这个数组列表。每次调用该类来访问数组列表时,它都会再次读取该文件。我希望文件被读取一次,然后多次访问数组列表。我怎样才能做到这一点?
最佳答案
将其存储在类的字段中。即:
public class Foo {
private List<String> list;
public List<String> readData() {
if (list != null) {
return list;
}
// do the reading.
}
}
请注意,如果在多线程环境中使用它,您必须采取额外的措施。例如输入 synchronized
关于方法。
正如 Peter 指出的,如果您可以读取多个文件,那么您可以使用 Map<String, List<String>>
另一注意事项是您应该只使用此类的一个实例。如果您创建多个实例,您将不会达到预期的效果。
关于java - 读取一次文件并多次使用数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4813617/