转载

java – 将ArrayList对象声明为在常量文件中使用的final

我正在生成一个ArrayList的对象.

以下是代码

ArrayList someArrayList = new ArrayList();

Public ArrayList getLotOfData()
{
ArrayList someData = new ArrayList();
return someData; 
}


someArrayList = eDAO.getLotOfData();

一旦我有这个ArrayList对象“someArrayList”,我想将其声明为public和final,并将其存储在一个常量文件中,以便可以全局访问.

有办法可以做到吗?如果我将一个Arraylist对象声明为public和final,那么我将无法重新分配任何值.

我尝试了以下

public final ArrayList anotherArrayList = new ArrayList();

anotherArrayList.addAll(someArrayList);

我希望将这个“anotherArrayList”存储为全局ArrayList对象并使用它,但这返回一个空指针异常.我想使用它就像一个String常量“ConstantsFile.anotherArrayList”.有任何想法吗???

就这个原因 Guava 提供了 ImmutableList . (此外,它没有ArrayList分配的不必要的空间开销,为未来的元素腾出空间,您将不会为应用程序添加空间.)
public static final ImmutableList<String> CONSTANTS = 
  ImmutableList.of("foo", "bar");

代码日志版权声明:

翻译自:http://stackoverflow.com/questions/9285011/declaring-an-arraylist-object-as-final-for-use-in-a-constants-file

原文  https://codeday.me/bug/20181016/297154.html
正文到此结束
Loading...