2014-04-14 62 views
3

我是一位使用Ruby的新手程序员,这是我在Stack Overflow上的第一个问题,请耐心等待。比方说,我有两个散列:将键/值对从一个哈希移动到另一个哈希

hash_one = { :key1 => :value1, :key2 => :value2, :key3 => :value3 } 
hash_two = { :key4 => :value4, :key5 => :value5, :key6 => :value6 } 

什么是移动从hash_one(例如:key1 => :value1)键/值对到hash_two最简单的方法?

+0

谢谢Tessi。非常感激。 – daveyK

回答

3
hash_two[:key1] = hash_one.delete(:key1) 

delete去除hash_onekey1并返回key1值。该值被用作在hash_two中设置此项的参数。

+0

好的答案,tessi。如果我们有两种形式的每个“删除”,一种是我们拥有的,这在这种情况下很有用,另一种会返回删除该项目的对象的剩余部分,那么这样做会不会很方便?如果我们知道一个项目将被删除,或者不在乎是否删除了一个项目,后者将很有用。 –

+0

@CarySwoveland [哈希#拒绝](http://www.ruby-doc.org/core-2.1.1/Hash.html#method-i-reject)仅用于此目的有点麻烦。 –

+0

好点,但我也想'String#delete'。 –

相关问题