SORU
14 NİSAN 2011, PERŞEMBE


Eğer string bir sayı ise Test Raylar üzerinde Ruby

Uygulama benim denetleyicisi içinde şu var:

def is_number?(object)
  true if Float(object) rescue false
end

ve benim denetleyicisi aşağıdaki durumu:

if mystring.is_number?

end

Durumu undefined method Bir hata veriyor. Yanlış yerde is_number tanımlanmış ettim sanırım...?

CEVAP
14 NİSAN 2011, PERŞEMBE


is_number? Yöntem Oluşturun.

Yardımcı yöntem oluşturun:

def is_number? string
  true if Float(string) rescue false
end

Sonra şöyle diyoruz:

my_string = '12.34'

is_number?( my_string )
# => true

String Sınıfı Genişletir.

Eğer istediğiniz arama yapabilmek için is_number? doğrudan dize yerine geçiyor gibi bir param için size yardımcı işlevi, gerek daha sonra tanımlamak is_number? uzatma String sınıf, bunun gibi

class String
  def is_number?
    true if Float(self) rescue false
  end
end

Ve o zaman diyebilirsiniz:

my_string.is_number?
# => true

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • campos9896

    campos9896

    24 Mart 2012
  • EvilControllers

    EvilControll

    20 Ocak 2008
  • o0oCyrusViruso0o

    o0oCyrusViru

    11 Mart 2008