이 방법은 발견 된 모든 player_id의 id를 변경하는 것입니다. 리크는 그것을 싫어하지만 의미있는 방식으로 리펙토링하는 방법을 찾을 수는 없습니다.복제를 사용할 때 어떻게 루비에서 중복 제거합니까?
(1..9).each { |n|
n = n.to_s
self.player_ids[n] = self.site_id.clone << "_" << self.player_ids[n].clone if self.player_ids[n]
}
난 그냥 복제 기능을 허용하지 않기 때문에이 중복 함께 생활해야합니까 나에게 :
player_id = self.player_ids[n]
player_id = self.site_id.clone << "_" << player_id.clone if player_id
샘플 입력 :
{:player_ids => {"2" => "player_name1", "6" => "player_name4", "9" => "player_name9"}
출력 :
{:player_ids => {"2" => "PRE_player_name1", "6" => "PRE_player_name4", "9" => "PRE_player_name9"}
self.site_id + "_"+ self.player_ids [n] self.player_ids [n]'을 (를) 사용해 볼 수 있습니까? – Dogbert
이 클로닝 및 인 플레이스 (in-place) 항목은 상당히 나빠 보인다. 이거 정말 틀어? 왜 우리가 하나 이상의 (또는 그 이상) pair input/desired_output을 보여주지 않아도 당신이 원하는 것을 알아낼 수 있습니다. – tokland
죄송합니다. 입력 및 출력을 표시하는 습관을 만들어야합니다. –