Ruby 代码从不输入任何if语句

Ruby 代码从不输入任何if语句,ruby,chomp,Ruby,Chomp,我输入1、2或3,总是会收到“请输入有效选项”的消息。我猜这是因为chomp方法将输入检索为字符串 有没有办法在选项周围加引号 begin selected_option = gets.chomp if selected_option == 1 puts "Welcome to the Welcome Screen!" elsif selected_option == 2 puts "This is the options menu." elsif selecte

我输入1、2或3,总是会收到“请输入有效选项”的消息。我猜这是因为chomp方法将输入检索为字符串

有没有办法在选项周围加引号

begin
  selected_option = gets.chomp
  if selected_option == 1
    puts "Welcome to the Welcome Screen!"
  elsif selected_option == 2
    puts "This is the options menu."
  elsif selected_option == 3
    puts "Logging out. Goodbye!"
  else
    puts "Please select a valid option."
  end  
end while not selected_option == 3
将其转换为整数

您可能还想改用开关:

gets.chomp.to_i
将其转换为整数

您可能还想改用开关:

gets.chomp.to_i

啊哈!固体让我来测试一下。用开关更好。啊哈!固体让我来测试一下。用开关更好。@Gareve:我的计算机刚刚格式化了C驱动器。谢谢。@Sergio:您应该将其作为bug归档。@Sergio Tapia,IRB或IRB中的“1==”1“不可能格式化硬盘驱动器。“如果真是这样,那就完全没有关系了。”锡人:我当然是在开玩笑。我笑了。但现在我的Mac电脑似乎挂起了,试图格式化一些不存在的“C:”驱动器。@Gareve:我的电脑刚刚格式化了C驱动器。谢谢。@Sergio:您应该将其作为bug归档。@Sergio Tapia,IRB或IRB中的“1==”1“不可能格式化硬盘驱动器。“如果真是这样,那就完全没有关系了。”锡人:我当然是在开玩笑。我笑了。但现在我的Mac电脑似乎挂起了,试图格式化一些不存在的“C:”驱动器。