我正在尝试提供一种紧凑的解决方案来处理具有多个类别的位置数字值的文件,假设[2..3]
是A
的值,[4..5]
是{{1 }} 等等。
如果可能的话,我需要一次将所有这些值求和,这就是我在Ruby中喜欢的。但是我有一个问题。
使用B
的无循环红宝石处理数组
array.inject(0)
答案 0 :(得分:0)
只需将输入映射到所需的三个数字,然后将它们转换为整数并求和:
['a12334111','b3215555','c444389663'].
map { |n| n[1...4].to_i }.sum
#⇒ 888
边注: Enumerable#sum
与inject(&:+)
相同。