-1

这是我的代码:

@cmd == "exit"

当@cmd 是字符串变量“exit”时,它不会返回 true。任何建议为什么?

-编辑-

-解决

错误:因为 @cmd 是使用 '@cmd = gets' 创建的,所以它在 @cmd 中添加了 '\n'。谢谢你的帮助!

4

2 回答 2

4

@cmd必须包含 exit 以外的内容。@cmd 是否可能包含某种空白字符,例如换行符或空格?也许尝试:

@cmd.chomp!
@cmd.strip!
@cmd == "exit"

如果 @cmd 是从 $stdin.readline 设置的,那么它可能会包含换行符。剥离和咀嚼将有助于消除不确定性。

于 2012-11-21T20:11:30.433 回答
1

看看到底@cmd是什么:

p @cmd

或尝试:

@cmd.to_s == "exit"
于 2012-11-21T20:09:36.730 回答