我一直在尝试从另一个文件访问arrayList。但是,当我运行大小时,它返回0.
然而,在它所在的类上运行它会返回一个值。似乎我无法从另一个类访问它,而且我正在错误地访问它。
public void test()
{
ArrayList<Events> eventArrayList = ( new ReadFile()).getList();
System.out.println(eventArrayList.size());
}
public class ReadFile
{
//Event arraylist
public ArrayList<Events> eventArrayList = new ArrayList<Events>();
System.out.println(eventArrayList.get(0).events);
public ArrayList<Events> getList()
{
ArrayList<Events> eventArrayList = new ArrayList<Events>();
return eventArrayList;
}
}
答案 0 :(得分:0)
你是&#34;重置&#34;每次拨打getList()
时列表。删除第一行代码。
public ArrayList<Events> getList() {
return eventArrayList;
}
此外,您应该返回List<Events>
(您不需要透露所使用的实施方式),如果您不这样做,则不应该返回列表,而是列表的副本希望其他对象改变它(请记住它是通过引用传递的,所以如果你改变它,你将在任何地方改变它。)