我有一个执行 1000 次的 for 循环!我想将每次迭代的结果保存到一个数组列表中,但它不会保存上次迭代的数据!它只是在每次迭代中清除整个数组列表并向其中添加新项目!
我应该如何保存整个数据?我不会添加任何代码,因为它真的很复杂,而且很难解释循环中发生了什么。我想大致知道如何解决问题并能够保存整个数据
声明你的循环ArrayList
之外。for
像这样
ArrayList results = new ArrayList();
for (int i = 0; i < 10000; ++i){
int result = myFunction(i);
results.add(result);
}
我需要你的代码来更准确地理解问题出在哪里,但我认为这可能是因为你ArrayList
在循环中创建了一个新的。
您的代码应如下所示:
List list = new ArrayList();
for(int i = 0; i < 1000; i++) {
data = ...
list.add(data);
}
在 for 循环之外创建一个 EmptyArrayList
对象。在 for 循环中获取您的对象并将其添加到列表中。
List<YourClass> list=new ArrayList<YourClass>();
for(int i=0;i <1000;i++)
{
obj=new YourClass();
list.add(obj);
}