Java 如何将两个方法返回相加
好的,我有一个方法Java 如何将两个方法返回相加,java,methods,return-value,Java,Methods,Return Value,好的,我有一个方法 public static int getTotalLegCountDog (ArrayList<Dog> dogList) { int temp = 0; for (int i = 0; i < dogList.size(); i++) { temp = dogList.get(i).getNumLegs(); totalLegsDogs += temp; } return tota
public static int getTotalLegCountDog (ArrayList<Dog> dogList)
{
int temp = 0;
for (int i = 0; i < dogList.size(); i++)
{
temp = dogList.get(i).getNumLegs();
totalLegsDogs += temp;
}
return totalLegsDogs;
}
没有正确调用该方法。这道题中的数学是可靠的。问题是方法输出调用 据我所知,这些方法本身没有什么问题-很可能在实际计算支腿之前调用了
getTotalegcount
修复1(首选):让getTotalLegCount
调用这些方法
public int getTotalLegCount (ArrayList<Dog> dogList, ArrayList<Cat> catList) {
totalLegs = getTotalLegCountDog(dogList) + getTotalLegCountCat;
return totalLegs;
}
public int getTotalLegCount(ArrayList dogList,ArrayList catList){
totalegs=getTotalegcountdog(dogList)+getTotalegcountcat;
收益总额;
}
修复2:非常清楚,首先要调用支腿计数方法。这是一个劣质的解决方案,因为它需要未来程序员付出更多的努力(这可能是未来的您!)。我认为您没有向我们展示足够的代码来进行任何故障排除。看起来您必须对狗腿和猫腿进行全局静态计数?我无法理解您的用例,但无论如何,您需要确保在对成员变量执行任何操作之前调用了两个计数方法,否则它们将不会被初始化。例如:
DogCatCounter.getTotalLegDogCount(...);
DogCatCounter.getTotalLegCatCount(...);
new DogCatCounter().getTotalLegCount();
只要
DogCatCounter
的其他实例没有修改静态变量,那么第三行的结果应该是正确的。换句话说,如果您有多个DogCatCounter
实例,对计数方法的任何调用都将修改全局静态成员。这两个方法都在total方法之前运行,并且这两个方法都在total方法之前输出。请提供一个上下文,说明如何调用这些方法,数据的外观以及变量的定义方式和位置。变量定义的位置是totalegs
、totalegsdogs
、和totalegscats
变量?它们是在方法之外定义的。
DogCatCounter.getTotalLegDogCount(...);
DogCatCounter.getTotalLegCatCount(...);
new DogCatCounter().getTotalLegCount();