- 1. Хеш
Ви можете створити масив зі списку декількох об'єктів, використовуючи квадратні дужки ([]) і розділяючи їх комами. Масиви Ruby можуть поєднувати різні типи об'єктів.
ruby> ary = [1, 2, "3"] [1, 2, "3"]
Масиви можуть бути склеєні та повторені також як і рядки.
ruby> ary + ["foo", "bar"] [1, 2, "3", "foo", "bar"] ruby> ary * 2 [1, 2, "3", 1, 2, "3"]
Ми можемо використовувати числові індекси для позначення будь-якої частини масиву.
ruby> ary[0] 1 ruby> ary[0,2] [1, 2] ruby> ary[0..1] [1, 2] ruby> ary[-2] 2 ruby> ary[-2,2] [2, "3"] ruby> ary[-2..-1] [2, "3"]
(Негативний числовий індекс означає зміщення з кінця масиву замість початку.)
Масиви можуть бути перетворені на рядки і назад з рядків на масиви, використовуючи методи join і split, відповідно:
ruby> str = ary.join(":") "1:2:3" ruby> str.split(":") ["1", "2", "3"]
Хеш
Асоціативний масив має елементи, доступ яких здійснюється не через числові індекси, а через ключі ( keys ), які можуть мати певну вагу. Такі масиви називаються хешами або словниками. У світі Ruby краще називати їх хешами. Хеш може бути сконструйований за допомогою фігурних дужок ({}). Ви можете використовувати ключ для пошуку чогось у хеші, як би використовували індекс для пошуку чогось у масиві.
ruby> h = {1 => 2, "2" => "4"} {1=>2, "2"=>"4"} ruby> h[1] 2 ruby> h["2"] "4" ruby> h[5] nil ruby> h[5] = 10 # appending value 10 ruby> h {5=>10, 1=>2, "2"=>"4"} ruby> h.delete 1 # deleting value 2 ruby> h[1] nil ruby> h {5=>10, "2"=>"4"}