В Ruby задан массив в одной из следующих форм ...
[apple, 1, banana, 2] [[apple, 1], [banana, 2]]
... как лучше всего преобразовать это в хеш в виде ...
{apple => 1, banana => 2}
Не уверен, что это лучший способ, но это работает:
a = ["apple", 1, "banana", 2] m1 = {} for x in (a.length / 2).times m1[a[x*2]] = a[x*2 + 1] end b = [["apple", 1], ["banana", 2]] m2 = {} for x,y in b m2[x] = y end