在使用`to_i`或`to_f`之前是否有必要使用'chomp'?

vgo*_*off 10 ruby

我看到人们使用以下代码:

gets.chomp.to_i
Run Code Online (Sandbox Code Playgroud)

要么

gets.chomp.to_f
Run Code Online (Sandbox Code Playgroud)

我不明白为什么,当这些线的结果总是相同时没有chomp之后gets.

是否gets.chomp.to_i真的有必要,或者是gets.to_i刚刚够吗?

Ser*_*sko 2

不需要使用chomp方法,因为:

String#chomp返回一个新的字符串,其中给定的记录分隔符从 str 的末尾删除(如果存在)。如果$/没有更改默认的 Ruby 记录分隔符,则chomp还会删除回车符(也就是说,它将删除“\n”、“\r”和“\r\n”)。这里有些例子

String#to_fstr返回将前导字符解释为浮点数的结果。超出有效数字末尾的无关字符将被忽略。如果 的开头没有有效数字str,则返回 0.0。此方法永远不会引发异常。以下是的一些示例to_f