Evgenii Legotckoi
21 июня 2016 г. 11:54

User Guide #06 - Ruby - массивы

Содержание

Вы можете создать массив из списка нескольких объектов, используя квадратные скобки ([]) и разделяя их запятыми. Массивы в Ruby могут совмещать различные типы объектов.

  1. ruby> ary = [1, 2, "3"]
  2. [1, 2, "3"]

Массивы могут быть склеены и повторены также как и строки.

  1. ruby> ary + ["foo", "bar"]
  2. [1, 2, "3", "foo", "bar"]
  3. ruby> ary * 2
  4. [1, 2, "3", 1, 2, "3"]

Мы можем использовать числовые индексы для обозначения любой части массива.

  1. ruby> ary[0]
  2. 1
  3. ruby> ary[0,2]
  4. [1, 2]
  5. ruby> ary[0..1]
  6. [1, 2]
  7. ruby> ary[-2]
  8. 2
  9. ruby> ary[-2,2]
  10. [2, "3"]
  11. ruby> ary[-2..-1]
  12. [2, "3"]

(Отрицательный числовой индекс означает смещение с конца массива, вместо начала.)

Массивы могут быть преобразованы в строки и обратно из строк в массивы, используя методы join и split, соответственно:

  1. ruby> str = ary.join(":")
  2. "1:2:3"
  3. ruby> str.split(":")
  4. ["1", "2", "3"]

Хэши

Ассоциативный массив имеет элементы, доступ к которым осуществляется не через числовые индексы, а через ключи ( keys ), которые могут иметь определённый вес. Такие массивы называются Хэшами или словарями. В мире Ruby предпочтительнее называть их хэшами. Хэш может быть сконструирован с помощью фигурных скобок ({}). Вы можете использовать ключ для поиска чего-нибудь в хэше, как если бы использовали индекс для поиска чего-нибудь в массиве.

  1. ruby> h = {1 => 2, "2" => "4"}
  2. {1=>2, "2"=>"4"}
  3. ruby> h[1]
  4. 2
  5. ruby> h["2"]
  6. "4"
  7. ruby> h[5]
  8. nil
  9. ruby> h[5] = 10 # appending value
  10. 10
  11. ruby> h
  12. {5=>10, 1=>2, "2"=>"4"}
  13. ruby> h.delete 1 # deleting value
  14. 2
  15. ruby> h[1]
  16. nil
  17. ruby> h
  18. {5=>10, "2"=>"4"}

Вам это нравится? Поделитесь в социальных сетях!

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь