Rubyでハッシュを要素に持つ配列の操作

[
{"1"=>"16"},
{"2"=>"13"},
{"3"=>"1"},
{"4"=>"8"},
{"5"=>"2"},
{"8"=>"7"},
]

という配列を以下のハッシュにしたい

{
"1"=>"16",
"2"=>"13",
"3"=>"1",
"4"=>"8",
"5"=>"2",
"8"=>"7",
}

以下で出来た。
http://qiita.com/abey1192/items/838ceb96b18ae53fabf5

p arr.map{|a| a.inject(:+)}.reduce({}){|hash,value| hash.merge(value[0] => value[1])}

Rubyではこんなにメソッドチェーンするものなのだろうか