【发布时间】:2014-08-21 06:09:25
【问题描述】:
有没有办法将符号散列拆分为键和值的字符串数组?
例如:
hash = {:key1 => 'val1',:key2 => 'val2'}
应该是:
keys = ['key1', 'key2']
values = ['val1','val2']
我知道我可以这样做:
keys = hash.keys.map { |key| key.to_s }
values = hash.values.map { |val| val.to_s }
但我想只循环一次。
【问题讨论】:
-
你能再解释一下吗?在他们那一刻,您所要求的令人困惑。例如,您谈论符号哈希,但将其定义为
array = [:key1 => val1,:key2 => val2],这不是有效的 ruby 语法。数组也没有键或值方法。 -
对不起,我的错误...查看更新的问题。
-
好的,我看不到在一个命令中执行此操作的简单方法。动机是什么?如果在一个命令中执行它真的很重要,我认为您将需要定义一个自定义方法。你不能用
.to_a吗?
标签: ruby-on-rails hash key-value