Я пытаюсь определить метод, который возвращает true
, если массив содержит строку или число. Я хочу, чтобы этот метод возвращал:Как проверить отдельные классы с помощью `is_a?`?
a = [ 1, 2, 3, "string" ]
any_strings_or_numbers?(a)
#=> true
b = [ "no numbers" ]
any_strings_or_numbers?(b)
#=> true
c = [ 1.0 ]
any_strings_or_numbers?(c)
#=> true
c = [ ]
any_strings_or_numbers?(c)
#=> false
Это то, что я пробовал, и он не работает:
def any_strings_or_numbers?(a)
a.any? {|num| num.is_a?(String || Integer) }
end
'num' - это вводящее в заблуждение имя переменной, если вы ожидаете как числа, так и строки. – Stefan