重複の可能性:
Ruby でこの文字列に対して * 演算子が行っていること
配列をハッシュに変換する簡単な方法を探しているときに、次のコードに出くわしました (IEnumerable の .Net の ToDictionary メソッドに似ています... キーと値を任意に設定できるようにしたかったのです)。
a = [ 1, 2, 3, 4, 5, 6 ]
h = Hash[ *a.collect { |v| [ v, v ] }.flatten ]
私の質問は、前のアスタリスクは何をするのa.collect
ですか?
ちなみに、コードはhttp://justatheory.com/computers/programming/ruby/array_to_hash_one_liner.htmlから来ています