[英]How to convert an array of string integers to an array of integers? Ruby
我有一个数组:
all_ages = ["11", "9", "10", "8", "9"]
我想把它转换成一个整数数组,希望能更容易地将它们加在一起。 非常感谢任何帮助,寻找一级解决方案。
Enumerable#sum
可以用一个块来调用,告诉 Ruby 如何对数组的元素求和,在这种情况下,首先在元素上调用String#to_i
。
all_ages = ["11", "9", "10", "8", "9"]
all_ages.sum(&:to_i)
#=> 47
all_ages = ["11", "9", "10", "8", "9"]
代码
p all_ages.map(&:to_i).sum
或者
p all_ages.map { |x| x.to_i }.sum
Output
47
这是一种可能对添加到您的武器库中有用的不同方法:
all_ages = ["11", "9", "10", "8", "9"]
def sum_str_to_i (array)
total = 0
array.each {|x| total += x.to_i}
total
end
sum_str_to_i(all_ages)
#=> 47
或者,如果您不想定义新方法:
total = 0
all_ages.each {|x| total += x.to_i}
total
#=> 47
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.