我有一个问题。我无法解决它,我需要一些帮助。我有对象的ArrayList那么我在其中创建并添加到ArrayList对象的方法,但我想另一种方法,我可以打印的ArrayList,但每次我尝试了数组列表是空的,所以这是我的代码:将对象添加到Arraylist并在方法外使用方法
public class Packages{
ArrayList<Pack> myList = new ArrayList<Pack>();
Pack obj;
public double addPackage(int type, double num){
if(type==1)
{
obj = new Pack(type, num);
total = obj.calculateTotal;
}
else
{
obj = new Pack(type, num);
total = obj.calculateTotal;
}
myList.add(obj);
return total;
}
public int listSize(){
return myList.size();
}
}
每当我调用listSize()方法时,它将返回0,看起来像addPackage方法完成时它删除我添加到我的Arraylist中的对象。 注:我的addPackage方法将返回一个双重总数,但同时将我创建的对象添加到数组列表。我需要一些帮助。
显示你在哪里调用两种方法。 – Kon
另外,你是否意识到如果和其他人完全一样呢?为什么obj是一个领域?它应该是一个局部变量。 –
你的代码或者至少显示的东西都可以正常工作,虽然它有点奇怪,因为我认为'calculateTotal'应该是一个方法,而不是一个属性,'obj'应该是一个局部变量,你的if/else是完全的冗余等。 –