Ste*_*e_D 5 ruby arrays string floating-point sum
我有一个十进制数组作为字符串,我需要得到数组的总和,我已经尝试迭代数组并将每个数字更改为浮点数,但每次只返回一个整数,我需要总和为小数.我应该将字符串更改为哪种数据类型,以及获取数组总和的最佳方法将会有所帮助.
Aru*_*hit 12
你只需要这样做
array.map(&:to_f).reduce(:+)
Run Code Online (Sandbox Code Playgroud)
说明: -
# it give you back all the Float instances from String instances
array.map(&:to_f)
# same as
array.map { |string| string.to_f }
array.map(&:to_f).reduce(:+)
# is a shorthand of
array.map(&:to_f).reduce { |sum, float| sum + float }
Run Code Online (Sandbox Code Playgroud)