簡體   English   中英

Ruby中gets.chomp.to_i和gets.chomp的區別

[英]Difference between gets.chomp.to_i and gets.chomp in Ruby

gets.chomp.to_igets.chomp中的 gets.chomp 有什么區別? 它是做什么的,它是如何工作的?

gets要求用戶輸入一些內容,並按照輸入的內容准確返回。 請注意,返回值是一個字符串並在末尾包含一個換行符(因為用戶按下Enter鍵提交了他們的響應):

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

添加chomp會從輸入中刪除換行符(從技術上講,是記錄分隔符)。 請注意, "1"現在末尾缺少換行符,但仍然是一個字符串:

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

添加to_i會將輸入字符串轉換為 integer。請注意,返回值現在是 integer:

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

使用.to_i執行轉換僅對 integer 輸入有意義,因為其他字符串值將返回 0:

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

gets在腳本中用於檢索用戶輸入。 .chomp用於刪除換行符和回車符。 這里

gets.chomp確實返回一個字符串 -> to_i將字符串轉換為 integer。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM