一般Ruby转换

时间:2015-03-13 16:22:02

标签: ruby

  1. 鉴于Integer(543543534)Integer Numeric '4532432' #=> NoMethodError: undefined method `Numeric' for main:Object 如何运作 类?它似乎并不适用于每个班级:

    SomeClass
  2. 除了尝试SomeClass或定义{{1}之外,是否有一般方法可以从'somestring'和字符串SomeClass.new('somestring')构建类#to_X的实例}

2 个答案:

答案 0 :(得分:2)

  1. 你的假设不成立。 Integer不是那里的课程。
  2. 您必须将其定义为一种方法(在Kernel中)。

答案 1 :(得分:2)

当您致电Integer(543543534)时,您会调用Kernel#Integer方法,该方法会将参数转换为FixnumBignumKernel包含Object模块,因此这只是Object上的方法调用,它与Integer类无关。