gpt4 book ai didi

Ruby 注入(inject)函数

转载 作者:数据小太阳 更新时间:2023-10-29 07:10:07 24 4
gpt4 key购买 nike

为什么第二个返回的值与第一个不同?

puts (3..5).map{|n| n**3}.inject{|sum,n| sum + n}
puts (3..5).inject{|sum,n| sum + n**3}

216192

最佳答案

因为在第一种情况下 the starting value of the accumulator27,在第二种情况下是 3

如果您使用 0 作为显式起始值,两者的计算结果将是相同的数字:

(3..5).map {|n| n**3 }.inject(0) {|sum,n| sum + n }
# => 216
# or just
(3..5).map {|n| n**3 }.inject(0, :+)

(3..5).inject(0) {|sum,n| sum + n**3 }
# => 216

关于Ruby 注入(inject)函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18079374/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com