Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Ruby Ruby Collections Build a Grocery List Program Create a Method That Returns an Array

this doenst work. nad i cant get the otheres ruby courses , i have to solev this one.

annoying

array_method.rb
def add_list_items
  ary=Array.new(3,"mos")
  return ary

2 Answers

You need to close your method definition with an end.

Also, while your code will pass the challenge just fine, it will create an array with three instances of "mos" which is not exactly what the challenge was asking for. The simplest code to pass this would be:

def add_list_items
  []
end

Which simply takes advantage of the fact that ruby methods always return the value of the last line evaluated (in this case just an empty array literal).

this works, thnkas. but they wanted a return array so wouldn't

def add_list_items
  my_ary=[]
return my_ary

work just as well? cause it doesnt

You don't need to assign the array to a variable as it will just immediately go out of scope when the method ends. If you wanted to be more explicit about the return you could specify it like this:

def add_list_items
  return []
end

But it's not necessary to have an explicit return in ruby so it's up to you.