Просмотр поста

.
No-Tactic

Все в руби является обьектом абсолютно все, даже класс является обьектом класса Class =)

Для каждого из типов обьектов определено очень много упрощающих жизнь методов.
есть методы трех типов

# первый
# если на конце стоит ?, то метод возвращает true или false
# в данном случае вернет true так как переменная var не определена и является обьектом класса nil 
var.nil?

# второй
# если на конце стоит !, то метод изменяет значение обьекта на котором вызван
arr = [1, 2, 3, 1, 4, 2]
arr.uniq! # удаляет повторяющиеся элементы
p arr # выведет [1, 2, 3, 4]


# третий
# на конце не стоит ничего
arr = [1, 2, 3, 1, 4, 2]
p arr.uniq # выведет [1, 2, 3, 4]
p arr # выведет [1, 2, 3, 1, 4, 2]