您可以使用Integer方法将转换String为Integer:
Integer("123") # => 123
Integer("0xFF") # => 255
Integer("0b100") # => 4
Integer("0555") # => 365您还可以将基本参数传递给该Integer方法,以从某个特定的基数转换数字
Integer('10', 5) # => 5
Integer('74', 8) # => 60
Integer('NUM', 36) # => 30910请注意,ArgumentError如果无法转换参数,该方法将引发:
Integer("hello")
# raises ArgumentError: invalid value for Integer(): "hello"
Integer("23-hello")
# raises ArgumentError: invalid value for Integer(): "23-hello"您也可以使用该String#to_i方法。但是,此方法比以下方法更宽松,并且具有不同的行为Integer:
"23".to_i # => 23 "23-hello".to_i # => 23 "hello".to_i # => 0
String#to_i 接受参数,将数字解释为的基数:
"10".to_i(2) # => 2 "10".to_i(3) # => 3 "A".to_i(16) # => 10