我一直试图将宠物店的平均成本添加到我桌子的第6个位置,但我无法让它工作。没有错误出现,我完全迷失了如何这样做。以下是计算商店宠物平均成本的方法。
public String getcalculatePetshopAverage(String shop)
{
ArrayList<Pets> petshopPets = new ArrayList<Pets>();
ArrayList<Pets> petsList = new ArrayList<Pets>();
petsList.addAll(dogs);
petsList.addAll(fishes);
for(Pets pet : petsList)
{
if(pet != null && pet.getShop().equals(shop))
{
petshopPets.add(pet);
}
}
double totalAverage = 0;
int i = 0;
for(Pets pet : petshopPets)
{
i++;
totalAverage = totalAverage + pet.getPrice();
}
System.out.println("There are "+i+" pets in here");
this.averagecost = totalAverage;
System.out.println(""+this.averagecost);
return String.format("%.2f",totalAverage/i);
}
下面是我在GUI中显示的表的代码的一部分。 我尝试使用petshop的名称调用该方法,但每当我为我的应用程序运行GUI时,在表的第6部分我只能看到NaN。
@Override
public Object getValueAt(int rowIndex, int columnIndex)
{
Pets pets = petshops.get(rowIndex);
switch (columnIndex)
{
case 0:
return pets.getShop();
case 1:
return pets.getType();
case 2:
return pets.getPrice();
case 3:
return pets.getDateAcquired();
case 4:
return pets.getNotes();
case 5:
return pets.getcalculatePetshopAverage(pets.getShop());
}
return null;
}
我还是Java的新手,我不知道如何将平均成本加到我的桌子上,我非常感谢你的帮助。