Rubygets.chomp.to中www.example.com _i和gets.chomp的区别

sg3maiej  于 2023-01-25  发布在  Ruby
关注(0)|答案(2)|浏览(238)

Ruby中的gets.chomp.to_igets.chomp有什么区别?它做什么以及如何工作?

mzillmmw

mzillmmw1#

gets要求用户输入一些内容,并返回与输入内容完全相同的内容。请注意,返回的值是一个字符串,并且在末尾包含一个换行符(因为用户按了Enter键来提交其响应):

> gets
> 1  # user input
=> "1\n"

添加chomp会从输入中删除换行符(技术上讲,是记录分隔符),注意"1"现在在末尾缺少换行符,但仍然是一个字符串:

> gets.chomp
> 1  # user input
=> "1"

加上to_i会将输入字符串转换为整数,注意返回值现在是整数:

> gets.chomp.to_i
> 1  # user input
=> 1

使用.to_i执行转换仅对整数输入有意义,因为其他字符串值将返回0:

> gets.chomp.to_i
> foo  # user input
=> 0
vlju58qv

vlju58qv2#

gets在脚本中用于检索用户输入。.chomp用于删除换行符和回车符。请参阅here
gets.chomp返回一个字符串-〉to_i将字符串转换为整数。

相关问题