0
점포의 배열시에 속하는
현에 속하는
- 는 개체 개체 개체가 유지
...
city_by_prefecture = shop_list.reduce({}){ |h,e|
if h[e.prefecture.name].nil?
h[e.prefecture.name] = {e.city.name => 1}
elsif h[e.prefecture.name][e.city.name].nil?
h[e.prefecture.name][e.city.name] = 1
else
h[e.prefecture.name][e.city.name] += 1
end
h
}
이렇게하는 것이 좋습니다.
가능한 중복 [해시 \의 [ "는"\] 존재하지 않는 경우 "는"\] \ [ "B"\] = "C"를 해시 \의 [을 할당하는 방법?] (http://stackoverflow.com/questions/5878529/how-to-assign-hashab-c-if-hasha-doesnt-exist) –
당신은'h.has_key? (e.prefecture.name)' 'h [e.prefecture.name] .nil? '보다는 오히려 당신이 요구하는 것이 더 분명하기 때문입니다. 또한,'reduce'보다는'each_with_object'를 사용하십시오, 그래서 당신은 블록의 끝에'h'를 넣을 필요가 없습니다. –
앤드류 감사합니다. 나는'each_with_object'에 대해 몰랐다. – minikomi