[RUBY] Hacher

Comment retirer la clé

h = {"apple" => "red"}

h.keys #=> ["apple"]

h.keys[0] # => "apple"

flatten (aplatissement d'un tableau multidimensionnel)

a = [1, [2, [3, [4, 5]]]]

a.flatten(1) #=> [1, 2, [3, [4, 5]]]
a.flatten(2) #=> [1, 2, 3, [4, 5]]
a.flatten(3) #=> [1, 2, 3, 4, 5]
a.flatten    #=> [1, 2, 3, 4, 5]

fusionner

h1 = {"red" => "apple"}
h2 = {"red" => "tomato"}
h1.merge(h2) #=> {"red"=>"tomato"}
h2.merge(h1) #=> {"red"=>"apple"}

Comme ci-dessus, si les clés sont identiques, elles seront écrasées par la valeur de hachage de l'argument. merge peut recevoir des blocs comme indiqué ci-dessous et peut spécifier le comportement lorsque la clé est dupliquée.

h1 = {"red" => "apple"}
h2 = {"red" => "tomato"}
h1.merge(h2){|key,h1v,h2v| "#{h1v}" + "," + "#{h2v}"}
#=> {"red"=>"apple,tomato"}

key?, has_key? (Vérifier l'existence de la clé)

h = {"red" => "apple"}
h.key?("red")     #=> true
h.has_key?("red") #=> true

h.key?("blue")    #=> false
h.has_key?("blue")#=> false

Recommended Posts

Hacher
Notes de Ruby Hash
[Ruby] À propos de la récupération du hachage
[À propos du double hachage]
[ruby] Double hachage
[Rails] Présentation de Active Hash
Utilisation de Active Hash
Expliquer les objets Ruby Hash
hash et chaque instruction
Les pièges d'Active Hash