Project

General

Profile

Actions

Feature #13693

closed

Allow String#to_i and / or Kernel::Integer to parse e-notation

Added by sos4nt (Stefan Schüßler) about 4 years ago. Updated almost 4 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Target version:
-
[ruby-core:81811]

Description

Kernel can properly convert e-notation strings into numeric objects:

     Float('1e+3') #=> 1000.0
  Rational('1e+3') #=> (1000/1)
   Complex('1e+3') #=> (1000.0+0i)
BigDecimal('1e+3') #=> 0.1e4

Same for String:

'1e+3'.to_f #=> 1000.0
'1e+3'.to_r #=> (1000/1)
'1e+3'.to_c #=> (1000.0+0i)
'1e+3'.to_d #=> 0.1e4

With one exception:

Integer('1e+3') #=> ArgumentError: invalid value for Integer(): "1e+3"
'1e+3'.to_i     #=> 1

Ruby should be able to convert e-notation strings to integers, too.

Actions

Also available in: Atom PDF