Какая разница между nil и false?

Сначала о сходстве. nil и false - это единственные два значения, которые в булевских выражениях считаются ложью. Однако они являются объектами разных классов (NilClass и FalseClass), и в остальных случаях у них разное поведение. Рекомендуется, чтобы предикативные методы (те, чьи имена заканчиваются на знак вопроса) возвращали true или false. Другим же методам, когда им требуется вернуть значение, сигнализирующее неудачу, следует возвращать nil.

Вход для пользователей