Array Class
The Array
class is one of Ruby’s built-in classes. Arrays are compact, ordered collections of objects. Ruby arrays can hold objects such as String
, Integer
, Fixnum
, Hash
, Symbol
, even other Array
objects. Any object that Ruby can create, it can hold in an array. Each element in an array is associated with and referred to by an index (also known as a subscript in other languages). Array elements are automatically indexed (numbered) with an integer (Fixnum
), starting with 0
, then numbered consecutively, adding 1
for each additional element. In certain instances, you can refer to the last element of an array with -1
, the second to last with -2
, and so forth. That’s handy. Ruby arrays are not as rigid as arrays in other languages. With static, compiled programming languages, you have to guess the ultimate size of the array at the time it is created. Not so with Ruby—arrays grow automatically.
Creating Arrays
There are many ways to create or initialize an array. One way is with the new
class method:
months = Array.new
You can set the size of an array (the number of elements in an array) like this:
months = Array.new(12) [or]
months = Array.new 12
The array months
now has a size (or length) of 12 elements. You can return the size of an array with either the size
or length
methods:
months.size # => 12 [or]
months.length # => 12
Another form of new
lets you assign an object (such as a string) to each element in the array:
month = Array.new(12, "month")
You can also use a block with
Get Ruby Pocket Reference now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.