我想寫一個方法,正方形,然後總結一個數組,但我不知道如何從這裏前進。我也不知道我是否應該將方法拆分,然後再將其相加,或者如果我真的可以將它們合併成一個。以下是我到目前爲止所提出的......雖然它並不多。創建一個可以對數組進行平方和求和的類?
public int sqSum(){
for(int i=0; i<array.length; i++)
int sqSum = array[i] * array[i];
return sqSum;
}
我想寫一個方法,正方形,然後總結一個數組,但我不知道如何從這裏前進。我也不知道我是否應該將方法拆分,然後再將其相加,或者如果我真的可以將它們合併成一個。以下是我到目前爲止所提出的......雖然它並不多。創建一個可以對數組進行平方和求和的類?
public int sqSum(){
for(int i=0; i<array.length; i++)
int sqSum = array[i] * array[i];
return sqSum;
}
問題是你實際上一次又一次地聲明相同的sqSum
變量沒有求和。
所以聲明它的for
循環外,如下圖所示:
public int sqSum(){
int sqSum =0;//declare it outside loop and use the same
for(int i=0; i<array.length; i++)
sqSum = sqSum + array[i] * array[i]; //add each product to previous sqSum
return sqSum;
}
如果我得到你的權利:
public int sqSum() {
int sqSum = 0;
for(int i=0; i<array.length; i++)
sqSum += array[i] * array[i];
return sqSum;
}
您可以使用Java 8個流API,如int sqSum = Arrays.stream(array).map(i -> i * i).sum()
。
想想更多的問題......您正在聲明&覆蓋一個變量。你沒有總結/添加任何東西。 –
[數組求和方法]的可能重複(http://stackoverflow.com/questions/35967397/array-sum-method) –