想我已經在這裏我要計算使用高階函數reduce()
數字的平均代碼:理解減少()
var ofAvg = [1,2,3,4,5]
var doAvg = ofAvg.reduce(0) { $0 + $1 }
doAvg/ofAvg.count //This gives me the correct answer which in this case is 3.
但是當我做:
var ofAvg = [1,2,3,4,5]
var doAvg = ofAvg.reduce(0) { ($0 + $1)/ofAvg.count }
我得到輸出爲1
。我在做什麼?我對reduce()
的理解是不是它實際上是什麼? reduce()
方法之外的doAvg/ofAvg.count
是否可以獲得平均值?
在每次迭代中,您將被計數除。 –
您只需要除以元素數量一次。 – itskoBits