Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Ruby Ruby Loops Build a Simple Contact List Hash and Array Iteration

What am I doing wrong here?

It keeps saying no implicit conversion from String to Integer

contact_list.rb
contact_list = [
  {"name" => "Jason", "phone_number" => "123"},
  {"name" => "Nick", "phone_number" => "456"}
]

contact_list.each do |contact|
  contact_list["phone_number"].to_i  
  puts "#{contact_list["name"]}"
  puts "#{contact_list["phone_number"]}"
end

2 Answers

Maciej Czuchnowski
Maciej Czuchnowski
36,437 Points

1) No need to convert anything into an integer (the .to_i method).

2) Inside the block, don't use the collection variable, but the local variable contact instead.

contact_list.each do |contact|
  puts "#{contact["name"]}"
  puts "#{contact["phone_number"]}"
end

Please re-watch the videos, experiment and make sure you understand this whole construct.

Thank you very much I will be doing some reviewing