2016-09-23 15 views
2

私は「Y」を入力していても条件が常に偽条件は常にfalseを返す(RUBY)

puts "Would you like to continue [y/n]" 
confirm = gets 
puts confirm == "y" # why this is not true even I type "y"  

if confirm == "y" 
    puts "Input is y" 
end 

答えて

1

は、あなたが最後

\nで入力した内容 confirm = gets.chomp原因 getsセットを使用してみますなぜ私が疑問に思います
> a = gets 
> y 
=> "y\n" 
+0

アメイジングから任意の不必要な文字を削除するgets.stripまたはgets.chompを使用することができます。ありがとう、私はちょうど9分後に答えをマークします – Beginner

1

代わりにこのコードを試してください。

puts "Would you like to continue [y/n]" 
confirm = gets 
puts "|#{confirm}|" # y\n 
puts confirm.strip == "y" # gives you true 
puts confirm == "y" # gives you false 

if confirm == "y" 
    puts "Input is y" 
end 

あなたはそれを解決するgets

関連する問題