在我的代码中我有一个方法或多个方法声明一些对象,如:
public void method{
ArrayList <Integer> al = new ArrayList<>();
//do smth else
}
我多次调用这些方法。将在每次迭代中分配新的meomory,因为调用新的运算符? 提前谢谢!
答案 0 :(得分:1)
是的,每次迭代都会有一个新的内存分配,你可以这样做以避免多个内存分配
ArrayList <Integer> al = null; //make the declaration outside the method
public void method{
if (al == null){
al= new ArrayList<>();
}else{
al.clear();}
//do smthing with you're arrayList here
}