How to create object array in rails?

47,437

Solution 1

Since everything is an object in Ruby (including numbers and strings) any array you create is an object array that has no limits on the types of objects it can hold. There are no arrays of integers, or arrays of widgets in Ruby. Arrays are just arrays.

my_array = [24, :a_symbol, 'a string', Object.new, [1,2,3]]

As you can see, an array can contain anything, even another array.

Solution 2

All you need is an array:

objArray = []
# or, if you want to be verbose
objArray = Array.new

To push, push or use <<:

objArray.push 17
>>> [17]

objArray << 4
>>> [17, 4]

You can use any object you like, it doesn't have to be of a particular type.

Solution 3

Depending on the situation, I like this construct to initialize an array.

# Create a new array of 10 new objects
Array.new(10) { Object.new }
#=> [#<Object:0x007fd2709e9310>, #<Object:0x007fd2709e92e8>, #<Object:0x007fd2709e92c0>, #<Object:0x007fd2709e9298>, #<Object:0x007fd2709e9270>, #<Object:0x007fd2709e9248>, #<Object:0x007fd2709e9220>, #<Object:0x007fd2709e91f8>, #<Object:0x007fd2709e91d0>, #<Object:0x007fd2709e91a8>]
Share:
47,437
Coder
Author by

Coder

Coder who willing to learn new things

Updated on July 09, 2022

Comments

  • Coder
    Coder almost 2 years

    I need to know how to create object array in rails and how to add elements in to that.

    I'm new to ruby on rails and this could be some sort of silly question but I can't find exact answer for that. So can please give some expert ideas about this