I see people use the following code:
gets.chomp.to_i
or
gets.chomp.to_f
I don't understand why, when the result of those lines are always the same as when there is no chomp
after gets
.
Is gets.chomp.to_i
really necessary, or is gets.to_i
just enough?
From the documentation for String#to_i:
Returns the result of interpreting leading characters in str as an integer base base (between 2 and 36). Extraneous characters past the end of a valid number are ignored. If there is not a valid number at the start of str, 0 is returned
String#to_f behaves the same way, excluding, of course, the base numbers.
Extraneous characters past the end of a valid number are ignored, this would include the newline. So there is no need to use chomp
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With