내 배열로 배열의 요소를 가입은 다음과 같습니다이 개
arr = ["object 1", 3, "object 2", 6]
가 어떻게 아래의 예상 출력을 만들 수 있습니까? join
을 사용하는 간단한 방법이 있습니까? 난 당신이 모든 것을 다시 생각해야한다고 생각 있도록
object 1 (x3), object 2 (x6).
내 배열로 배열의 요소를 가입은 다음과 같습니다이 개
arr = ["object 1", 3, "object 2", 6]
가 어떻게 아래의 예상 출력을 만들 수 있습니까? join
을 사용하는 간단한 방법이 있습니까? 난 당신이 모든 것을 다시 생각해야한다고 생각 있도록
object 1 (x3), object 2 (x6).
은 문자열 배열에서 더 논리적 변환이 없습니다.
그러나 당신이 할 수는
arr.each_slice(2). # get every two elements
map { |top| "#{top.first} (x#{top.last})" }. # create a string for each pair
join(', ') # join them by a comma.
# => "object 1 (x3), object 2 (x6)"
난 당신이 그런 데이터에 대한'hash'을 필요가 있다고 생각합니다. – Kabie
키 중 일부가 같을 수 있지만 해시 값은 항상 달라지기 때문에 해시가 발생하지 않습니다. – TheWebs
그런 다음 해시 대신 "키"뒤에 "값"이 포함 된 하위 배열이 오는 배열을 사용하십시오. 플랫 배열을 사용하면 가능하지만 가능한 경우 데이터를 구성하고 그룹화하는 것이 좋습니다. –