我正在生成对象的 ArrayList。以下是代码
ArrayList someArrayList = new ArrayList();
Public ArrayList getLotOfData()
{
ArrayList someData = new ArrayList();
return someData;
}
someArrayList = eDAO.getLotOfData();
一旦我有了这个 ArrayList 对象“someArrayList”,我想将它声明为 public 和 final 并将它存储在一个 Constants 文件中,以便可以全局访问它。有什么办法可以做到吗?如果我将 Arraylist 对象声明为 public 和 final,那么我将无法为其重新分配任何值。我尝试了以下
public final ArrayList anotherArrayList = new ArrayList();
anotherArrayList.addAll(someArrayList);
我曾希望将此“anotherArrayList”存储为全局 ArrayList 对象并使用它,但这会返回空指针异常。我想像使用字符串常量“ConstantsFile.anotherArrayList”一样使用它。有任何想法吗???
原文由 Raghu 发布,翻译遵循 CC BY-SA 4.0 许可协议
番石榴 提供
ImmutableList
正是出于这个原因。 (此外,它没有不必要的空间开销ArrayList
分配用于为您不会为您的应用程序添加的未来元素腾出空间。)