Ruby 鲁比:我怎样才能摆脱这个循环
我有: 如何使行Ruby 鲁比:我怎样才能摆脱这个循环,ruby,Ruby,我有: 如何使行返回nil 请注意,在第二行,line=get是故意的,因此当get=nil时,line=nil整个条件变为false。如果您的意思是“作为从命令行输入的人,我如何使其终止?”:您可以点击ctrl-D 如果您的意思是“如何以编程方式退出此循环?”:只需检查是否存在终止循环的任何条件,如果该条件为真,则break如果您的意思是“作为从命令行提供输入的人,我将如何终止此循环?”:您将按ctrl-D 如果您的意思是“如何以编程方式退出此循环?”:只需检查是否存在终止循环的任何条件,如果
返回nil
请注意,在第二行,line=get
是故意的,因此当get=nil
时,line=nil
整个条件变为false。如果您的意思是“作为从命令行输入的人,我如何使其终止?”:您可以点击ctrl-D
如果您的意思是“如何以编程方式退出此循环?”:只需检查是否存在终止循环的任何条件,如果该条件为真,则break
如果您的意思是“作为从命令行提供输入的人,我将如何终止此循环?”:您将按ctrl-D
如果您的意思是“如何以编程方式退出此循环?”:只需检查是否存在终止循环的任何条件,如果为真,则
break
gets
在获取EOF
(文件结尾)时返回nil
您可以向终端发送一个EOF
,这是通过在类Unix系统上按Ctrl-D来完成的。或在Windows上按Ctrl-Z键
参考:
获取
在获取EOF
时返回nil
(文件结束)
您可以向终端发送一个EOF
,这是通过在类Unix系统上按Ctrl-D来完成的。或在Windows上按Ctrl-Z键
参考资料:那么,您在等空行吗?当您的输入以EOF终止时,这应该可以正常工作。您希望它如何退出循环?您可以让用户输入一个特殊的字符串或任何东西。退出循环的条件是什么?一个特殊的角色?您应该将
line=get
放在while循环中而不是条件中,除非您有意跳过输入的第一行,否则您应该删除第一行line=get
。当没有更多输入(如果您正在重定向STDIN)或键入Ctrl-d
(*nix/Mac)或Ctrl-z
(Windows)时,循环将终止。您是否正在等待空行?当您的输入以EOF终止时,这应该可以正常工作。您希望它如何退出循环?您可以让用户输入一个特殊的字符串或任何东西。退出循环的条件是什么?一个特殊的角色?您应该将line=get
放在while循环中而不是条件中,除非您有意跳过输入的第一行,否则您应该删除第一行line=get
。当没有更多输入(如果您正在重定向STDIN)或键入Ctrl-d
(*nix/Mac)或Ctrl-z
(Windows)时,循环将终止。
line = gets
while line = gets
print line
end
puts 'out of loop'