Ruby는 객체 키를 배열로 가져옵니다.


97

저는 Ruby를 처음 사용합니다. 이와 같은 객체가 있으면

{"apple" => "fruit", "carrot" => "vegetable"}

키 배열 만 반환하려면 어떻게해야합니까?

["apple", "carrot"]

당신이 사용할 수 있도록 개체는 해시 keys와 같은 방법을 {"apple" => "fruit", "carrot" => "vegetable"}.keys. 자세한 정보는 ruby-doc.org/core-1.9.3을
taro

답변:


217
hash = {"apple" => "fruit", "carrot" => "vegetable"}
array = hash.keys   #=> ["apple", "carrot"]

그렇게 간단합니다


16

더 많은 것이 필요한 경우 다른 방법 ( keys방법을 사용하는 것 외에 ) :

hash = {"apple" => "fruit", "carrot" => "vegetable"}
array = hash.collect {|key,value| key }

분명히 당신은 그것을 검색하는 동안 배열을 조작하려는 경우에만 그렇게 할 것입니다 ..


4

taro가 말했듯이 keys해시의 키 배열을 반환합니다.

http://ruby-doc.org/core-1.9.3/Hash.html#method-i-keys

각 클래스에 사용할 수있는 모든 다른 방법을 찾을 수 있습니다.

당신이 무엇을 다루고 있는지 모르는 경우 :

 puts my_unknown_variable.class.to_s

이것은 클래스 이름을 출력합니다.


2

keys방법을 사용하십시오 :{"apple" => "fruit", "carrot" => "vegetable"}.keys == ["apple", "carrot"]

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.