5

Rubyには単語配列と呼ばれるものがあります

fruits = %w(Apple Orange Melon)

になる

fruits = ["Apple", "Orange", "Melon"]

とにかく、Rubyの単語配列をハッシュとして使用することもできますか?

fruits["Apple"]0、1 などを返しますfruits["Orange"]。または、これをハッシュとして宣言する必要がありますか?

fruits_hash = {
  'Apple' => 0,
  'Orange' => 1,
  'Melon' => 2,
}

目的は、フィールドを整数として保存できるようにすることですが、Rails では文字列として表現することです。

4

4 に答える 4

12
Hash[%w(Apple Orange Melon).each_with_index.to_a]  
# => {"Apple"=>0, "Orange"=>1, "Melon"=>2}
于 2013-10-17T12:40:32.213 に答える
5

ここに別のものがあります:

fruits = %w(Apple Orange Melon)
fruit_hash = Hash[[*fruits.each_with_index]]
于 2013-10-17T12:45:43.640 に答える
2
Hash[fruits.zip((0...fruits.length).to_a)]
=> {"Apple"=>0, "Orange"=>1, "Melon"=>2}
于 2013-10-17T12:40:03.970 に答える