您可以使用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