从数组数组中获取最后一个值

时间:2012-06-20 01:10:18

标签: ruby arrays

arr = [[a,1], [b,3], [c,2]]

如何将上述数组转换为以下数据:

[1,3,2]

4 个答案:

答案 0 :(得分:5)

使用map& last

arr.map(&:last)  #=> [1,3,2]

这相当于更长的

arr.map { |o| o.last }

答案 1 :(得分:3)

只需arr.map(&:last)

答案 2 :(得分:3)

执行此操作的另一种更明确的方法是使用Array#collect:

array = [['a', 1], ['b', 3], ['c', 2]]
array.collect { |subarray| subarray.last }

这取决于你需要用什么语义来表示你正在做的事情。

答案 3 :(得分:1)

如果每个元素都是一个2元素数组,那就像这样

arr.map{|x,y| y}