J'ai deux hash qui ressemblent à ceci:Joignez-vous à deux Ruby hachages par les clés
h1 = {key1: 'Roses are', key2: 'Violets are'}
h2 = {key1: 'Red', key2: 'Blue'}
je voudrais les rejoindre par les clés afin que je reçois un hachage comme ceci:
result = {'Roses are' => 'Red', 'Violets are' => 'Blue'}
I ont un code qui fait l'affaire:
result = {}
h1.each { |key, value| result[value] = h2[key] }
Je me demande s'il y a une méthode dans le répertoire lib standard pour faire ceci ou si cela peut être fait avec moins code.
Moins de code? Ceci est seulement 2 lignes. Si vous en avez vraiment besoin, vous pouvez le réduire à une ligne en utilisant each_with_object, comme: 'result = h1.each_with_object ({}) {| (clé, valeur), h3 | h3 [valeur] = h2 [clé]} ' – Santhosh