Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
arr = [[a,1], [b,3], [c,2]]
如何将上述数组转换为以下数组:
[1,3,2]
使用map& last:
map
last
arr.map(&:last) #=> [1,3,2]
这相当于更长的
arr.map { |o| o.last }
简直了arr.map(&:last)。
arr.map(&:last)
执行此操作的另一种更明确的方法是使用 Array#collect:
array = [['a', 1], ['b', 3], ['c', 2]] array.collect { |subarray| subarray.last }
这仅取决于您需要什么语义来表示您正在做的事情。
如果每个元素都是一个 2 元素数组,那么就像这样
arr.map{|x,y| y}