Ответ 1
есть ли одна рубиновая "
return if x
"?
Да:
return if x
Я люблю Ruby: -)
есть тонна мест, которые мне нужно добавить
if this_flag
return
end
может быть сделано в одной строке с ruby?
есть ли одна рубиновая "
return if x
"?
Да:
return if x
Я люблю Ruby: -)
Некоторые дополнения к Jörg W Mittag хороший ответ:
x && return
x and return
if x then return end
Я действительно не рекомендую первые две формы: однако приведенные выше примеры - все действующие производства. Я лично предпочитаю избегать return
в целом - большинство грамматических конструкций в Ruby являются полезными выражениями.
Счастливое кодирование.
Ruby всегда возвращает последнее... Почему бы просто не структурировать свой код по-другому?
def returner(test)
"success" if test
end
Все, что вы сделали последним, вернется. Я люблю Руби.
Создайте метод проверки ожидаемых типов классов
Пример ниже. Метод check_class
вернет true, как только он найдет правильный класс.
Полезно, если вам по какой-то причине может потребоваться расширить количество разных типов классов.
def check_class(x)
return true if is_string(x)
return true if is_integer(x)
# etc etc for possible class types
return false # Otherwise return false
end
def is_string(y)
y.is_a? String
end
def is_integer(z)
z.is_a? Integer
end
a = "string"
puts "#{check_class(a)}"