首页 > 解决方案 > 如何将 [45,32,56] 或 "45,32,56" 转换为 42,32,56?

问题描述

我有一个哈希,我想从中获取特定的密钥

a={1=>32, 23=>23, 24=>232, 56=>123} 
keys=[23,56]

要从 {} 获取此键的值,我使用函数

a.values_at 23,56 # => [23, 232]`

问题是我如何转换[23,56....]23,56

标签: arraysrubysplat

解决方案


使用 splat 运算符(*在参数之前)将数组转换为参数

a={1=>32, 23=>23, 24=>232, 56=>123} 
# => {1=>32, 23=>23, 24=>232, 56=>123}
keys=[23,56]
# => [23, 56]
a.values_at(*keys)
#=> [23, 123]

也可以看看:


推荐阅读