Подтвердить что ты не робот

Как проверить, является ли переменная числом или строкой?

Как проверить, является ли переменная числом или строкой в ​​Ruby?

4b9b3361

Ответ 1

Существует несколько способов:

>> 1.class #=> Fixnum
>> "foo".class #=> String
>> 1.is_a? Numeric #=> true
>> "foo".is_a? String #=> true

Ответ 2

class Object
  def is_number?
    self.to_f.to_s == self.to_s || self.to_i.to_s == self.to_s
  end
end

> 15.is_number?
=> true
> 15.0.is_number?
=> true
> '15'.is_number?
=> true
> '15.0'.is_number?
=> true
> 'String'.is_number?
=> false

Ответ 3

var.is_a? String

var.is_a? Numeric

Ответ 4

finishing_moves камень включает в себя String#numeric? метод для выполнения этой самой задачи. Подход такой же, как и у ответа installero, только что упакованный.

"1.2".numeric?
#=> true

"1.2e34".numeric?
#=> true

"1.2.3".numeric?
#=> false

"a".numeric?
#=> false

Ответ 5

Распечатайте свой класс, он покажет вам, какой тип переменной (например, String или Number).

например:.

puts varName.class

Ответ 6

class Object
  def numeric?
    Float(self) != nil rescue false
  end
end

Ответ 7

if chr.to_i != 0
  puts "It is number,  yep"
end