[英]Recursive method with incorrect return value
這種遞歸方法似乎加起來了。 由於某種原因,返回總和時,總和等於4,而不是應為10的值。 為什么總和不等於10? 我只是測試該方法,看它是否有效,數組將發生變化。
public class TestMeanVal {
public static void main(String[] args){
int[] intArray = new int[] {1,2,3,4};
System.out.println(meanRec(intArray, intArray.length-1, 0));
}
static double meanRec(int[] array, int b, int g){
int sum = g;
if (c.length == 1){
return c[0]/1.0;
}else if(b >= 0){
sum += c[b];
b--;
meanRec(c,b, sum);
}
return sum/c.length;
}
}
你需要
return meanRec(c, b, sum);
否則它將遞歸,但始終返回第一次調用的sum/c.length
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.