>> irb(main):001:0> first_array = ["Databases", "Network Management", "Security"] >> => ["Databases", "Network Management", "Security"] >> irb(main):002:0> second_array = ["http://databases", "http://network", >> "http://security"] >> => ["http://databases", "http://network", "http://security"] Sorry for the third post in a row, but this is much better done like this: irb(main):006:0> first_array.zip(second_array).map {|(k,v)| {:name => k, :url => v}} => [{:url=>"http://databases", :name=>"Databases"}, {:url=>"http://network", :name=>"Network Management"}, {:url=>"http://security", :name=>"Security"}] Jesus.