Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
这是我的代码:
@cmd == "exit"
当@cmd 是字符串变量“exit”时,它不会返回 true。任何建议为什么?
-编辑-
-解决
错误:因为 @cmd 是使用 '@cmd = gets' 创建的,所以它在 @cmd 中添加了 '\n'。谢谢你的帮助!
@cmd必须包含 exit 以外的内容。@cmd 是否可能包含某种空白字符,例如换行符或空格?也许尝试:
@cmd.chomp! @cmd.strip! @cmd == "exit"
如果 @cmd 是从 $stdin.readline 设置的,那么它可能会包含换行符。剥离和咀嚼将有助于消除不确定性。
看看到底@cmd是什么:
@cmd
p @cmd
或尝试:
@cmd.to_s == "exit"