Je suis nouveau sur Ruby, si j’ai un object comme celui-ci
{"apple" => "fruit", "carrot" => "vegetable"}
Comment puis-je retourner un tableau contenant uniquement les clés?
["apple", "carrot"]
hash = {"apple" => "fruit", "carrot" => "vegetable"} array = hash.keys #=> ["apple", "carrot"]
c’est si simple
Une alternative si vous avez besoin de quelque chose de plus (en plus de la méthode des keys
):
hash = {"apple" => "fruit", "carrot" => "vegetable"} array = hash.collect {|key,value| key }
évidemment, vous ne feriez cela que si vous voulez manipuler le tableau tout en le récupérant.
Comme dit Taro, les keys
retournent le tableau des clés de votre Hash:
http://ruby-doc.org/core-1.9.3/Hash.html#method-i-keys
Vous trouverez toutes les différentes méthodes disponibles pour chaque classe.
Si vous ne savez pas à quoi vous avez affaire:
puts my_unknown_variable.class.to_s
Cela va afficher le nom de la classe.
Utilisez la méthode des keys
: {"apple" => "fruit", "carrot" => "vegetable"}.keys == ["apple", "carrot"]