728x90
반응형
728x90
반응형
728x90
반응형

Ruby에서 해시(Hash)와 배열(Array) 변환 쉽게 하기

  • Ruby에서는 해시(Hash)와 배열(Array)를 서로 변환할 수 있는 기능을 제공합니다.
  • 이 글에서는 to_ato_h 메서드를 사용하여 해시를 배열로 변환하고, 다시 배열을 해시로 되돌리는 방법을 살펴보겠습니다.


1. 해시를 배열로 변환

  • Rubyto_a 메서드를 사용하면 해시를 배열로 변환할 수 있습니다.

  • ruby

      hash = {"a" => ["b", "c", "d"], "e" => ["f", "g"]}
      array = hash.to_a
      # 결과: [["a", ["b", "c", "d"]], ["e", ["f", "g"]]]
    
  • 변환된 배열은 [키, 값] 형태의 배열로 이루어집니다.



2. 배열을 해시로 변환

  • 배열을 다시 해시로 변환할 때는 to_h 메서드를 사용합니다.

  • ruby

      hash2 = array.to_h
      # 결과: {"a" => ["b", "c", "d"], "e" => ["f", "g"]}
    
  • 배열이 올바른 키-값 쌍 형태일 경우, to_h를 통해 쉽게 해시로 변환할 수 있습니다.



3. 해시 비교

  • 변환 후 원래 해시와 동일한지 확인하려면 <=> 연산자를 사용할 수 있습니다.

  • ruby

      hash <=> hash2
      # 결과: 0 (동일함을 의미)
    
  • 0이 출력되면 두 해시가 같은 구조와 값을 가지고 있음을 뜻합니다.



4. 해시 값만 출력

  • 해시의 값들만 가져오고 싶다면 values 메서드를 사용할 수 있습니다.

  • ruby

      hash.values
      # 결과: [["b", "c", "d"], ["f", "g"]]
    
  • 이렇게 하면 키를 제외하고 값만 포함된 배열을 얻을 수 있습니다.



정리

  • Ruby에서 해시와 배열을 변환하는 방법을 정리하면 다음과 같습니다.

    • to_a : 해시 → 배열 변환
    • to_h : 배열 → 해시 변환
    • <=> : 두 해시 비교
    • values : 해시 값만 추출
  • 이 방법들을 활용하면 해시와 배열을 쉽게 변환하고 조작할 수 있습니다.

728x90
반응형

+ Recent posts